Skip to content

Commit 7125be2

Browse files
authored
Adapt w.r.t. coq/coq#18909. (#1881)
1 parent f0db7fd commit 7125be2

File tree

11 files changed

+18
-16
lines changed

11 files changed

+18
-16
lines changed

src/Algebra/Field.v

+3-3
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Section Field.
1313

1414
Lemma right_multiplicative_inverse : forall x : T, ~ eq x zero -> eq (mul x (inv x)) one.
1515
Proof using Type*.
16-
intros. rewrite commutative. auto using left_multiplicative_inverse.
16+
intros. rewrite commutative. pose left_multiplicative_inverse; eauto.
1717
Qed.
1818

1919
Lemma left_inv_unique x ix : ix * x = one -> ix = inv x.
@@ -72,7 +72,7 @@ Section Field.
7272

7373
Global Instance integral_domain : @integral_domain T eq zero one opp add sub mul.
7474
Proof using Type*.
75-
split; auto using field_commutative_ring, field_is_zero_neq_one, is_mul_nonzero_nonzero.
75+
split; eauto using field_commutative_ring, field_is_zero_neq_one, is_mul_nonzero_nonzero.
7676
Qed.
7777
End Field.
7878

@@ -90,7 +90,7 @@ Section Homomorphism.
9090
intros.
9191
eapply inv_unique.
9292
rewrite <-Ring.homomorphism_mul.
93-
rewrite left_multiplicative_inverse; auto using Ring.homomorphism_one.
93+
rewrite left_multiplicative_inverse; pose Ring.homomorphism_one; eauto.
9494
Qed.
9595

9696
Lemma homomorphism_multiplicative_inverse_complete

src/Algebra/Group.v

+4-4
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ Section BasicProperties.
1010
Local Open Scope eq_scope.
1111

1212
Lemma cancel_left : forall z x y, z*x = z*y <-> x = y.
13-
Proof using Type*. eauto using Monoid.cancel_left, left_inverse. Qed.
13+
Proof using Type*. epose Monoid.cancel_left; epose left_inverse; eauto. Qed.
1414
Lemma cancel_right : forall z x y, x*z = y*z <-> x = y.
15-
Proof using Type*. eauto using Monoid.cancel_right, right_inverse. Qed.
15+
Proof using Type*. epose Monoid.cancel_right; epose right_inverse; eauto. Qed.
1616
Lemma inv_inv x : inv(inv(x)) = x.
17-
Proof using Type*. eauto using Monoid.inv_inv, left_inverse. Qed.
17+
Proof using Type*. epose Monoid.inv_inv; epose left_inverse; eauto. Qed.
1818
Lemma inv_op_ext x y : (inv y*inv x)*(x*y) =id.
19-
Proof using Type*. eauto using Monoid.inv_op, left_inverse. Qed.
19+
Proof using Type*. epose Monoid.inv_op; epose left_inverse; eauto. Qed.
2020

2121
Lemma inv_unique x ix : ix * x = id -> ix = inv x.
2222
Proof using Type*.

src/Algebra/Hierarchy.v

+1-1
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,6 @@ Section ZeroNeqOne.
155155

156156
Lemma one_neq_zero : not (eq one zero).
157157
Proof using Type*.
158-
intro HH; symmetry in HH. auto using zero_neq_one.
158+
intro HH; symmetry in HH. epose zero_neq_one; auto.
159159
Qed.
160160
End ZeroNeqOne.

src/Algebra/IntegralDomain.v

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Module IntegralDomain.
1616
Global Instance Integral_domain :
1717
@Integral_domain.Integral_domain T zero one add mul sub opp eq Ring.Ncring_Ring_ops
1818
Ring.Ncring_Ring Ring.Cring_Cring_commutative_ring.
19-
Proof using Type. split; cbv; eauto using zero_product_zero_factor, one_neq_zero. Qed.
19+
Proof using Type. split; cbv; pose zero_product_zero_factor; pose one_neq_zero; eauto. Qed.
2020
End IntegralDomain.
2121

2222
Module _LargeCharacteristicReflective.

src/Algebra/Ring.v

+3-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ Section Ring.
1919
Global Instance Ncring_Ring_ops : @Ncring.Ring_ops T zero one add mul sub opp eq := {}.
2020
Global Instance Ncring_Ring : @Ncring.Ring T zero one add mul sub opp eq Ncring_Ring_ops.
2121
Proof using Type*.
22-
split; exact _ || cbv; intros; eauto using left_identity, right_identity, commutative, associative, right_inverse, left_distributive, right_distributive, ring_sub_definition with core typeclass_instances.
22+
split; exact _ || cbv; intros;
23+
pose left_identity; pose right_identity; pose commutative; pose associative; pose right_inverse; pose left_distributive; pose right_distributive; pose ring_sub_definition;
24+
eauto with core typeclass_instances.
2325
- (* TODO: why does [eauto using @left_identity with typeclass_instances] not work? *)
2426
eapply @left_identity; eauto with typeclass_instances.
2527
- eapply @right_identity; eauto with typeclass_instances.

src/Bedrock/End2End/RupicolaCrypto/ChaCha20.v

+1-1
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ Lemma array_dexpr_locals_put
168168
map.get l x = None → Forall2 (DEXPR m l) exp w → Forall2 (DEXPR m #{ … l; x => v }#) exp w.
169169
Proof.
170170
induction 2; constructor;
171-
eauto using dexpr_locals_put.
171+
solve [eauto|epose dexpr_locals_put; eauto].
172172
Qed.
173173

174174
(* we leave prior valiues abstract to support compound operations *)

src/Bedrock/Field/Synthesis/New/Signature.v

+1-1
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ Section WithParameters.
172172
| |- map word.unsigned ?x = map byte.unsigned _ =>
173173
is_evar x;
174174
erewrite Util.map_unsigned_of_Z,MaxBounds.map_word_wrap_bounded
175-
by eauto using byte_unsigned_within_max_bounds;
175+
by (eapply byte_unsigned_within_max_bounds; eauto);
176176
reflexivity
177177
| _ => equivalence_side_conditions_hook
178178
end.

src/Bedrock/Field/Translation/Proofs/EquivalenceProperties.v

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ Section OnlyDiffer.
5353
Proof.
5454
cbv [equivalent_base rep.equiv rep.Z WeakestPrecondition.dexpr].
5555
repeat intro; sepsimpl; subst; eexists; sepsimpl; eauto.
56-
eauto using expr_only_differ_undef.
56+
pose expr_only_differ_undef; eauto.
5757
Qed.
5858

5959
Section Local.

src/Bedrock/Field/Translation/Proofs/Func.v

+1-1
Original file line numberDiff line numberDiff line change
@@ -442,7 +442,7 @@ Section Func.
442442
pose proof H; apply map.only_differ_putmany in H
443443
end.
444444

445-
erewrite IHt1; eauto using only_differ_trans; [ |
445+
erewrite IHt1; pose only_differ_trans; eauto ; [ |
446446
apply disjoint_union_l_iff; intuition trivial;
447447
symmetry; eapply NoDup_disjoint; eauto ].
448448
erewrite IHt2 by eauto using only_differ_trans.

src/Spec/CompleteEdwardsCurve.v

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ Module E.
3232
end.
3333

3434
Program Definition zero : point := (0, 1).
35-
Next Obligation. eauto using Pre.onCurve_zero. Qed.
35+
Next Obligation. pose Pre.onCurve_zero; eauto. Qed.
3636

3737
Program Definition add (P1 P2:point) : point :=
3838
match coordinates P1, coordinates P2 return (F*F) with

src/Util/Relations.v

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ Require Import Crypto.Util.Logic.
33
Require Import Coq.Classes.Morphisms Coq.Setoids.Setoid.
44

55
Lemma symmetry_iff {T} {R} {Rsym:@Symmetric T R} x y: R x y <-> R y x.
6-
intuition eauto using symmetry.
6+
epose symmetry; intuition eauto.
77
Qed.
88

99
Lemma and_rewrite_l {A B} {RA RB} {Equivalence_RA:Equivalence RA} {Equivalence_RB:Equivalence RB}

0 commit comments

Comments
 (0)