Recent changes¶
Unreleased changes¶
Added¶
in
NatInt.v
lemmas
mul_reg_l
andmul_reg_r
(#17560, by Remzi Yang).
file
List_Extension.v
inWellfounded
(#18183, by Andrej Dudenhefner).in
Inverse_Image.v
inWellfounded
lemmas
Acc_simulation
andwf_simulation
(#18183, by Andrej Dudenhefner).
in
Operators_Properties.v
inRelations
lemma
clos_t_clos_rt
(#18183, by Andrej Dudenhefner).
in
List_Extension.v
well-founded list extension
list_ext
of a well-founded relation, including infrastructure lemmas. It can be used for well-foundedness proofs such aswf_lex_exp
inLexicographic_Exponentiation.v
(#18183, by Andrej Dudenhefner).
in
VectorSpec.v
lemma
Forall2_cons_iff
(#19269, by Lucas Donati and Andrej Dudenhefner and Pierre Rousselin).
in
List.v
lemmas
length_cons
andlength_nil
(#19479, by Hugo Herbelin).
in
Eqdep_dec.v
inLogic
lemmas
UIP_None_l
,UIP_None_r
,UIP_None_None
,UIP_nil_l
,UIP_nil_r
,UIP_nil_nil
(#19483, by Andres Erbsen).
in
List.v
Proper
instance to enablesetoid_rewrite
to rewrite inside the function argument ofList.map
(#19515, by Andres Erbsen).
in
Fin.v
lemmas
case_L_R'_L
,case_L_R'_R
,case_L_R_L
,case_L_R_R
(#19655, by Andrej Dudenhefner).
in
List.v
lemmas
length_tl
,tl_map
,filter_rev
,filter_map_swap
,filter_true
,filter_false
,list_prod_as_flat_map
,skipn_seq
,map_const
,fst_list_prod
,snd_list_prod
,Injective_map_NoDup_in
, andPermutation_map_same_l
(#19748, by Andres Erbsen).
in
BinPos.v
lemma
BinPos.iter_op_correct
, relatingPos.iter_op
for associative operations to the more generalPos.iter
(#19749, by Andres Erbsen).
in
Znat.v
lemmas
N2Z.inj_lxor
,N2Z.inj_land
,N2Z.inj_lor
,N2Z.inj_ldiff
,N2Z.inj_shiftl
, andN2Z.inj_shiftr
relating bitwise operations onN
to those onZ
(#19750, by Andres Erbsen).
file
Zdiv_facts.v
(#19752, by Andres Erbsen).in file
Zdiv_facts.v
in file
Zdiv.v
lemma
Z.mod_id_iff
generalizesZ.mod_small
. (#19752, by Andres Erbsen).lemmas
Z.mod_opp_mod_opp
,Z.mod_mod_opp_r
,Z.mod_opp_r_mod
,Z.mod_mod_abs_r
,Z.mod_abs_r_mod
combiningZ.modulo
withZ.opp
orZ.abs
(#19752, by Andres Erbsen).Lemmas
cong_iff_0
andcong_iff_ex
can be used to reduce congruence equalities to equations where only one side is headed byZ.modulo
. (#19752, by Andres Erbsen).Lemmas
Z.gcd_mod_l
andZ.gcd_mod_r
generalizeZ.gcd_mod
. (#19752, by Andres Erbsen).Lemma
Z.mod_mod_divide
generalizesZmod_mod
. (#19752, by Andres Erbsen).Lemma
Z.mod_pow_l
allows pushing modulo inside exponentiation (#19752, by Andres Erbsen).
Deprecated: module
ZArith_Base
, moduleZtac
, andZeq_bool
. UseZArith
(orBinInt
),Lia
, andZ.eqb
instead. Reducing use of the deprecated modules in stdlib changed the transitive dependencies of several stdlib files; you may now need toRequire
orImport
ZArith
orLia
. The definition ofZeq_bool
was also changed to be an alias forZ.eqb
; this is expected to simplify simultaneous compatibility with 8.20 and 9.0 (#19801, by Andres Erbsen).Added:
Stdlib.All
which doesRequire Export
of all other files in the stdlib (#19914, by Gaëtan Gilbert).in
EquivDec.v
inClasses
(#19949, by Daniil Iaitskov).EqDec
instance foroption
in
List.v
lemma
length_app_comm
(#75, by Nicholas Hubbard).
Changed¶
Changed the requirement prefix of the standard library from
Coq
toStdlib
and made it mandatory. As a temporary measure, for backward compatibility with older versions,Coq
, or a missingFrom Stdlib
, is immediatly translated toStdlib
with a warning. It is thus not recommended to name anythingCoq
orCoq.*
. The recommended transition path is to first potentially silence the warnings, adding the lines-arg -w -arg -deprecated-from-Coq
,-arg -w -arg -deprecated-dirpath-Coq
and-arg -w -arg -deprecated-missing-stdlib
or simply the more generic-arg -compat -arg 8.20
to your_CoqProject
. Then, when droping support for Coq <= 8.20, replacing requirement of Stdlib modules byFrom Stdlib Require {Import,Export,} <LibraryModules>.
. Beware that the Stdlib still has a handful redundant names, that is for modulesByte
, you still have to useFrom Stdlib.Strings
orFrom Stdlib.Init
, forTactics
useFrom Stdlib.Program
orFrom Stdlib.Init
, forTauto
useFrom Stdlib.micromega
orFrom Stdlib.Init
and forWf
, useFrom Stdlib.Program
orFrom Stdlib.Init
(#19310 and #19530, the latter starting to implement CEP#83 by Pierre Roux).in
List.v
lemmas that were using the letter
O
in their name to refer to zero now use instead the digit0
(#19479, by Hugo Herbelin).
in
Fin.v
case_L_R'
andcase_L_R
made transparent definitions (#19655, by Andrej Dudenhefner).
in several files
remove transitive requirements or export of theories about
Z
, you may need to add explicitRequire
orImport
ofZArith
orLia
(#19801, by Andres Erbsen).
in
Zbool.v
definition of
Zeq_bool
is now an alias forZ.eqb
, this is expected to simplify simultaneous compatibility with 8.20 and 9.0 (#19801, by Andres Erbsen).
Renamed¶
Deprecated¶
Changed¶
Previous versions¶
The standard library historically used to be distributed with Coq, please look in Coq own changelog for details about older changes.