aboutsummaryrefslogtreecommitdiff
path: root/src/Util/ZUtil.v
diff options
context:
space:
mode:
authorGravatar Jason Gross <jgross@mit.edu>2016-10-09 20:45:11 -0400
committerGravatar Jason Gross <jgross@mit.edu>2016-10-09 21:49:30 -0400
commit893481161e1d4db357264e80d84be97c10333371 (patch)
treec36cd335ff56930c722ad8e469fcb73a3ce5dc76 /src/Util/ZUtil.v
parentc07267ce4315bceb7955bc36952c24ef02c5c1e9 (diff)
Fix Ztestbit_full database
After | File Name | Before || Change --------------------------------------------------------------------------------------------- 5m59.20s | Total | 5m54.42s || +0m04.78s --------------------------------------------------------------------------------------------- 0m22.58s | ModularArithmetic/Pow2BaseProofs | 0m21.32s || +0m01.25s 1m35.12s | Test/Curve25519SpecTestVectors | 1m35.10s || +0m00.02s 0m35.67s | ModularArithmetic/Conversion | 0m35.54s || +0m00.13s 0m27.70s | ModularArithmetic/ModularBaseSystemProofs | 0m27.46s || +0m00.23s 0m20.14s | EdDSARepChange | 0m19.42s || +0m00.71s 0m14.57s | Specific/GF25519 | 0m14.69s || -0m00.11s 0m13.16s | Util/ZUtil | 0m12.89s || +0m00.26s 0m10.09s | Testbit | 0m09.77s || +0m00.32s 0m08.77s | ModularArithmetic/Montgomery/ZProofs | 0m08.57s || +0m00.19s 0m08.38s | BoundedArithmetic/ArchitectureToZLikeProofs | 0m08.34s || +0m00.04s 0m08.04s | Encoding/PointEncoding | 0m08.09s || -0m00.05s 0m08.01s | BoundedArithmetic/Double/Proofs/Multiply | 0m08.00s || +0m00.00s 0m07.86s | Specific/GF1305 | 0m07.96s || -0m00.09s 0m07.14s | BoundedArithmetic/Double/Proofs/SpreadLeftImmediate | 0m06.73s || +0m00.40s 0m05.45s | BoundedArithmetic/Double/Proofs/RippleCarryAddSub | 0m05.31s || +0m00.14s 0m03.85s | BaseSystemProofs | 0m03.83s || +0m00.02s 0m03.83s | ModularArithmetic/BarrettReduction/ZHandbook | 0m03.77s || +0m00.06s 0m03.46s | ModularArithmetic/ModularBaseSystemListProofs | 0m03.54s || -0m00.08s 0m03.36s | ModularArithmetic/Tutorial | 0m03.46s || -0m00.10s 0m03.36s | BoundedArithmetic/InterfaceProofs | 0m03.29s || +0m00.06s 0m02.98s | ModularArithmetic/BarrettReduction/ZGeneralized | 0m03.05s || -0m00.06s 0m02.86s | Encoding/PointEncodingPre | 0m02.76s || +0m00.10s 0m02.85s | ModularArithmetic/ModularArithmeticTheorems | 0m02.61s || +0m00.24s 0m02.80s | BoundedArithmetic/Double/Proofs/Decode | 0m02.76s || +0m00.04s 0m02.46s | ModularArithmetic/BarrettReduction/ZBounded | 0m02.23s || +0m00.23s 0m02.35s | ModularArithmetic/ModularBaseSystemOpt | 0m02.44s || -0m00.08s 0m02.13s | Specific/FancyMachine256/Barrett | 0m01.99s || +0m00.13s 0m02.08s | Specific/FancyMachine256/Montgomery | 0m02.10s || -0m00.02s 0m01.80s | ModularArithmetic/PrimeFieldTheorems | 0m01.33s || +0m00.47s 0m01.76s | ModularArithmetic/Montgomery/ZBounded | 0m01.84s || -0m00.08s 0m01.76s | Specific/FancyMachine256/Core | 0m01.70s || +0m00.06s 0m01.50s | ModularArithmetic/BarrettReduction/Z | 0m01.47s || +0m00.03s 0m01.23s | BaseSystem | 0m01.32s || -0m00.09s 0m01.22s | ModularArithmetic/ExtendedBaseVector | 0m01.23s || -0m00.01s 0m01.15s | BoundedArithmetic/Double/Repeated/Proofs/Decode | 0m01.05s || +0m00.09s 0m00.97s | Util/NumTheoryUtil | 0m00.84s || +0m00.13s 0m00.92s | BoundedArithmetic/Double/Proofs/LoadImmediate | 0m00.95s || -0m00.02s 0m00.90s | BoundedArithmetic/Double/Proofs/BitwiseOr | 0m00.81s || +0m00.08s 0m00.89s | Experiments/EncodingLemmas | 0m00.89s || +0m00.00s 0m00.76s | ModularArithmetic/PseudoMersenneBaseParamProofs | 0m00.65s || +0m00.10s 0m00.65s | BoundedArithmetic/X86ToZLike | 0m00.62s || +0m00.03s 0m00.65s | ModularArithmetic/ModularBaseSystem | 0m00.56s || +0m00.08s 0m00.64s | BoundedArithmetic/Interface | 0m00.73s || -0m00.08s 0m00.62s | Spec/ModularWordEncoding | 0m00.64s || -0m00.02s 0m00.61s | Encoding/ModularWordEncodingTheorems | 0m00.65s || -0m00.04s 0m00.60s | Encoding/ModularWordEncodingPre | 0m00.62s || -0m00.02s 0m00.60s | BoundedArithmetic/Double/Repeated/Proofs/LoadImmediate | 0m00.44s || +0m00.15s 0m00.60s | Spec/EdDSA | 0m00.63s || -0m00.03s 0m00.55s | ModularArithmetic/ExtPow2BaseMulProofs | 0m00.67s || -0m00.12s 0m00.55s | BoundedArithmetic/Double/Repeated/Proofs/SelectConditional | 0m00.45s || +0m00.10s 0m00.55s | ModularArithmetic/ModularBaseSystemList | 0m00.63s || -0m00.07s 0m00.55s | BoundedArithmetic/Double/Proofs/SelectConditional | 0m00.61s || -0m00.05s 0m00.53s | BoundedArithmetic/Double/Repeated/Core | 0m00.51s || +0m00.02s 0m00.52s | ModularArithmetic/Pre | 0m00.51s || +0m00.01s 0m00.52s | BoundedArithmetic/StripCF | 0m00.54s || -0m00.02s 0m00.52s | Spec/Ed25519 | 0m00.48s || +0m00.04s 0m00.50s | BoundedArithmetic/Double/Repeated/Proofs/RippleCarryAddSub | 0m00.49s || +0m00.01s 0m00.49s | ModularArithmetic/ZBounded | 0m00.51s || -0m00.02s 0m00.49s | BoundedArithmetic/Double/Core | 0m00.50s || -0m00.01s 0m00.48s | BoundedArithmetic/Double/Repeated/Proofs/BitwiseOr | 0m00.44s || +0m00.03s 0m00.46s | ModularArithmetic/Pow2Base | 0m00.50s || -0m00.03s 0m00.46s | BoundedArithmetic/ArchitectureToZLike | 0m00.46s || +0m00.00s 0m00.42s | ModularArithmetic/PseudoMersenneBaseParams | 0m00.41s || +0m00.01s 0m00.37s | ModularArithmetic/Montgomery/Z | 0m00.41s || -0m00.03s 0m00.36s | Spec/ModularArithmetic | 0m00.31s || +0m00.04s
Diffstat (limited to 'src/Util/ZUtil.v')
-rw-r--r--src/Util/ZUtil.v4
1 files changed, 1 insertions, 3 deletions
diff --git a/src/Util/ZUtil.v b/src/Util/ZUtil.v
index 69f4fe236..bf1e704e2 100644
--- a/src/Util/ZUtil.v
+++ b/src/Util/ZUtil.v
@@ -854,7 +854,6 @@ Module Z.
Proof.
repeat break_match; auto using Z.shiftl_spec_low, Z.shiftl_spec, Z.testbit_neg_r with omega.
Qed.
- Hint Rewrite shiftl_spec_full : Ztestbit.
Hint Rewrite shiftl_spec_full : Ztestbit_full.
Lemma shiftr_spec_full a n m
@@ -866,8 +865,7 @@ Module Z.
Proof.
rewrite <- Z.shiftl_opp_r, shiftl_spec_full, Z.sub_opp_r; reflexivity.
Qed.
- Hint Rewrite shiftl_spec_full : Ztestbit.
- Hint Rewrite shiftl_spec_full : Ztestbit_full.
+ Hint Rewrite shiftr_spec_full : Ztestbit_full.
(* prove that combinations of known positive/nonnegative numbers are positive/nonnegative *)
Ltac zero_bounds' :=