Skip to content

Commit 434c932

Browse files
committed
Assume proof gap
1 parent c37f8cd commit 434c932

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

audit.log

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ Auditing ./src/Distributions/BernoulliExpNeg/Implementation.dfy
2323
Auditing ./src/Distributions/BernoulliExpNeg/Interface.dfy
2424

2525
Auditing ./src/Distributions/BernoulliRational/Correctness.dfy
26+
/!\ No terms found to trigger on.
27+
/!\ No terms found to trigger on.
2628

2729
Auditing ./src/Distributions/BernoulliRational/Implementation.dfy
2830

@@ -52,6 +54,9 @@ Auditing ./src/Distributions/Geometric/Model.dfy
5254
ProbWhileGeometricTerminates: Declaration has explicit `{:axiom}` attribute.
5355

5456
Auditing ./src/Distributions/Uniform/Correctness.dfy
57+
/!\ No terms found to trigger on.
58+
/!\ No terms found to trigger on.
59+
UniformCorrectnessCorrectMeasureCaseNGreaterOne: Definition has `assume {:axiom}` statement in body.
5560
ProbUniformIsIndepFn: Declaration has explicit `{:axiom}` attribute.
5661

5762
Auditing ./src/Distributions/Uniform/Implementation.dfy
@@ -78,8 +83,6 @@ Auditing ./src/Distributions/UniformPowerOfTwo/Model.dfy
7883
ProbUnifCorrespondence: Definition has `assume {:axiom}` statement in body.
7984

8085
Auditing ./src/Math/Helper.dfy
81-
Log: Declaration has explicit `{:axiom}` attribute.
82-
LogPower: Declaration has explicit `{:axiom}` attribute.
8386

8487
Auditing ./src/Math/MeasureTheory.dfy
8588
CountableSum: Definition has `assume {:axiom}` statement in body.

src/Distributions/Uniform/Correctness.dfy

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,8 @@ module UniformCorrectness {
6666
lemma UniformFullCorrectness(n: nat, i: nat)
6767
requires 0 <= i < n
6868
ensures
69-
var e := UniformFullCorrectnessHelper(n, i);
70-
&& e in RandomNumberGenerator.event_space
71-
&& RandomNumberGenerator.mu(e) == 1.0 / (n as real)
69+
&& UniformFullCorrectnessHelper(n, i) in RandomNumberGenerator.event_space
70+
&& RandomNumberGenerator.mu(UniformFullCorrectnessHelper(n, i)) == 1.0 / (n as real)
7271
{
7372
var e := UniformFullCorrectnessHelper(n, i);
7473
var p := (s: RandomNumberGenerator.RNG) => UniformPowerOfTwoModel.ProbUnif(n-1)(s).0 < n;
@@ -192,15 +191,13 @@ module UniformCorrectness {
192191
var k := Helper.SandwichBetweenPowers(2, n - 1);
193192
var e2 := UniformFullCorrectnessHelper2(n, i);
194193
assert RandomNumberGenerator.mu(e2) == 1.0 / (Helper.Power(2, k + 1) as real) by {
195-
assert Helper.Power(2, k) <= n - 1 < Helper.Power(2, k + 1) by {
196-
assume false;
197-
}
194+
assert Helper.Power(2, k) <= n - 1 < Helper.Power(2, k + 1);
198195
UniformPowerOfTwoCorrectness.UnifCorrectness(n - 1, k + 1);
199196
assert UniformPowerOfTwoCorrectness.UnifIsCorrect(n - 1, k + 1, i);
200197
}
201198
assert 1.0 / (n as real) == 1.0 / (Helper.Power(2, k) as real) by {
202199
assert n == Helper.Power(2, k) by {
203-
assume false;
200+
assume {:axiom} false;
204201
}
205202
}
206203
}

0 commit comments

Comments
 (0)