You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit fc9cc8a
Browse filesBrowse the repository at this point in the historyBrowse files
.unsupported "returning a namedtuple through the call boundary is outside the tier (no namedtuple observation form in `Val`; a tuple snapshot would silently forget the class — docs/memory-model.md §class semantics)"
657
-
| .rangeV .. =>
658
-
.unsupported "returning a range through the call boundary is outside the tier (no range observation form in `Val`; docs/memory-model.md §module-init execution)"
659
648
| .ref _ =>
660
649
.unsupported "returning a heap object through the call boundary is outside the tier (H1-proper freeze, docs/memory-model.md)"
RVal.thawListH_of_listFree xs.toList (by simpa [Val.listFree] using hf) h]
@@ -1002,8 +996,7 @@ mutual
1002
996
return .tuple vs.toArray
1003
997
| .ntuple _ _ _ =>
1004
998
.unsupported "returning a namedtuple through the call boundary is outside the tier (no namedtuple observation form in `Val`; a tuple snapshot would silently forget the class — docs/memory-model.md §class semantics)"
1005
-
| .rangeV .. =>
1006
-
.unsupported "returning a range through the call boundary is outside the tier (no range observation form in `Val`; docs/memory-model.md §module-init execution)"
999
+
| .rangeV lo hi step => .ok (.range lo hi step)
1007
1000
| .ref a =>
1008
1001
if path.contains a then
1009
1002
.unsupported "returning a CYCLIC heap object through the call boundary is outside the tier (no cyclic observation form in `Val`; docs/memory-model.md §call layering)"
@@ -1065,8 +1058,7 @@ mutual
1065
1058
return .tuple vs.toArray
1066
1059
| .ntuple _ _ _ =>
1067
1060
.unsupported "returning a namedtuple through the call boundary is outside the tier (no namedtuple observation form in `Val`; a tuple snapshot would silently forget the class — docs/memory-model.md §class semantics)"
1068
-
| .rangeV .. =>
1069
-
.unsupported "returning a range through the call boundary is outside the tier (no range observation form in `Val`; docs/memory-model.md §module-init execution)"
1061
+
| .rangeV lo hi step => .ok (.range lo hi step)
1070
1062
| .ref a => RVal.freezeH h fuel [] (.ref a)
1071
1063
1072
1064
/-- Elementwise `freezeB`, first refusal wins. -/
@@ -1092,6 +1084,7 @@ mutual
1092
1084
| .int _ => rfl
1093
1085
| .float _ => rfl
1094
1086
| .str _ => rfl
1087
+
| .range _ _ _ => rfl
1095
1088
| .list xs => by
1096
1089
simp only [RVal.thaw, RVal.freezeB,
1097
1090
RVal.freezeListB_thawList h fuel xs.toList, Res.ok_bind, Res.pure_eq]
Copy file name to clipboardExpand all lines: docs/python-coverage.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,17 +10,17 @@ What the Lean model of Python runs, measured. Everything outside the modelled ti
10
10
11
11
| rows | agree with CPython | disagree | recorded refusals |
12
12
|---:|---:|---:|---:|
13
-
| 3025 |2664| 0 |361|
13
+
| 3025 |2665| 0 |360|
14
14
15
-
Of the 2664 rows the model decides, 2664 agree with CPython (100.0%). A *recorded refusal* is a row kept in the suite to pin a known gap: the model must refuse it, and the suite fails if it ever answers instead.
15
+
Of the 2665 rows the model decides, 2665 agree with CPython (100.0%). A *recorded refusal* is a row kept in the suite to pin a known gap: the model must refuse it, and the suite fails if it ever answers instead.
16
16
17
17
### What the theorems can see
18
18
19
19
The rows above run through the runner's interpreter (`LeanModels/Python/Monadic/`). Theorems are stated about a second definition, `LeanModels/Python/Semantics.lean`, whose tier is narrower ([python-architecture.md](python-architecture.md)). `diff_test.py --proof-interpreter` runs the same rows through it; a refusal there is allowed, a wrong answer is not.
0 commit comments