summaryrefslogtreecommitdiff
path: root/tests/fstar/array
diff options
context:
space:
mode:
authorSon HO2023-11-22 15:06:43 +0100
committerGitHub2023-11-22 15:06:43 +0100
commitbacf3f5f6f5f6a9aa650d5ae8d12a132fd747039 (patch)
tree9953d7af1fe406cdc750030a43a5e4d6245cd763 /tests/fstar/array
parent587f1ebc0178acb19029d3fc9a729c197082aba7 (diff)
parent01cfd899119174ef7c5941c99dd251711f4ee701 (diff)
Merge pull request #45 from AeneasVerif/son_merge_types
Big cleanup
Diffstat (limited to '')
-rw-r--r--tests/fstar/array/Array.Clauses.Template.fst6
-rw-r--r--tests/fstar/array/Array.Funs.fst218
-rw-r--r--tests/fstar/array/Array.Types.fst3
-rw-r--r--tests/fstar/array/Primitives.fst88
4 files changed, 189 insertions, 126 deletions
diff --git a/tests/fstar/array/Array.Clauses.Template.fst b/tests/fstar/array/Array.Clauses.Template.fst
index 06056d61..08a2925f 100644
--- a/tests/fstar/array/Array.Clauses.Template.fst
+++ b/tests/fstar/array/Array.Clauses.Template.fst
@@ -6,12 +6,14 @@ open Array.Types
#set-options "--z3rlimit 50 --fuel 1 --ifuel 1"
-(** [array::sum]: decreases clause *)
+(** [array::sum]: decreases clause
+ Source: 'src/array.rs', lines 228:0-236:1 *)
unfold
let sum_loop_decreases (s : slice u32) (sum0 : u32) (i : usize) : nat =
admit ()
-(** [array::sum2]: decreases clause *)
+(** [array::sum2]: decreases clause
+ Source: 'src/array.rs', lines 238:0-247:1 *)
unfold
let sum2_loop_decreases (s : slice u32) (s2 : slice u32) (sum0 : u32)
(i : usize) : nat =
diff --git a/tests/fstar/array/Array.Funs.fst b/tests/fstar/array/Array.Funs.fst
index 8f0bfbbd..a8722a4f 100644
--- a/tests/fstar/array/Array.Funs.fst
+++ b/tests/fstar/array/Array.Funs.fst
@@ -8,146 +8,174 @@ include Array.Clauses
#set-options "--z3rlimit 50 --fuel 1 --ifuel 1"
(** [array::incr]: merged forward/backward function
- (there is a single backward function, and the forward function returns ()) *)
+ (there is a single backward function, and the forward function returns ())
+ Source: 'src/array.rs', lines 8:0-8:24 *)
let incr (x : u32) : result u32 =
u32_add x 1
-(** [array::array_to_shared_slice_]: forward function *)
+(** [array::array_to_shared_slice_]: forward function
+ Source: 'src/array.rs', lines 16:0-16:53 *)
let array_to_shared_slice_ (t : Type0) (s : array t 32) : result (slice t) =
array_to_slice t 32 s
-(** [array::array_to_mut_slice_]: forward function *)
+(** [array::array_to_mut_slice_]: forward function
+ Source: 'src/array.rs', lines 21:0-21:58 *)
let array_to_mut_slice_ (t : Type0) (s : array t 32) : result (slice t) =
array_to_slice t 32 s
-(** [array::array_to_mut_slice_]: backward function 0 *)
+(** [array::array_to_mut_slice_]: backward function 0
+ Source: 'src/array.rs', lines 21:0-21:58 *)
let array_to_mut_slice__back
(t : Type0) (s : array t 32) (ret : slice t) : result (array t 32) =
array_from_slice t 32 s ret
-(** [array::array_len]: forward function *)
+(** [array::array_len]: forward function
+ Source: 'src/array.rs', lines 25:0-25:40 *)
let array_len (t : Type0) (s : array t 32) : result usize =
let* s0 = array_to_slice t 32 s in let i = slice_len t s0 in Return i
-(** [array::shared_array_len]: forward function *)
+(** [array::shared_array_len]: forward function
+ Source: 'src/array.rs', lines 29:0-29:48 *)
let shared_array_len (t : Type0) (s : array t 32) : result usize =
let* s0 = array_to_slice t 32 s in let i = slice_len t s0 in Return i
-(** [array::shared_slice_len]: forward function *)
+(** [array::shared_slice_len]: forward function
+ Source: 'src/array.rs', lines 33:0-33:44 *)
let shared_slice_len (t : Type0) (s : slice t) : result usize =
let i = slice_len t s in Return i
-(** [array::index_array_shared]: forward function *)
+(** [array::index_array_shared]: forward function
+ Source: 'src/array.rs', lines 37:0-37:57 *)
let index_array_shared (t : Type0) (s : array t 32) (i : usize) : result t =
array_index_usize t 32 s i
-(** [array::index_array_u32]: forward function *)
+(** [array::index_array_u32]: forward function
+ Source: 'src/array.rs', lines 44:0-44:53 *)
let index_array_u32 (s : array u32 32) (i : usize) : result u32 =
array_index_usize u32 32 s i
-(** [array::index_array_copy]: forward function *)
+(** [array::index_array_copy]: forward function
+ Source: 'src/array.rs', lines 48:0-48:45 *)
let index_array_copy (x : array u32 32) : result u32 =
array_index_usize u32 32 x 0
-(** [array::index_mut_array]: forward function *)
+(** [array::index_mut_array]: forward function
+ Source: 'src/array.rs', lines 52:0-52:62 *)
let index_mut_array (t : Type0) (s : array t 32) (i : usize) : result t =
array_index_usize t 32 s i
-(** [array::index_mut_array]: backward function 0 *)
+(** [array::index_mut_array]: backward function 0
+ Source: 'src/array.rs', lines 52:0-52:62 *)
let index_mut_array_back
(t : Type0) (s : array t 32) (i : usize) (ret : t) : result (array t 32) =
array_update_usize t 32 s i ret
-(** [array::index_slice]: forward function *)
+(** [array::index_slice]: forward function
+ Source: 'src/array.rs', lines 56:0-56:46 *)
let index_slice (t : Type0) (s : slice t) (i : usize) : result t =
slice_index_usize t s i
-(** [array::index_mut_slice]: forward function *)
+(** [array::index_mut_slice]: forward function
+ Source: 'src/array.rs', lines 60:0-60:58 *)
let index_mut_slice (t : Type0) (s : slice t) (i : usize) : result t =
slice_index_usize t s i
-(** [array::index_mut_slice]: backward function 0 *)
+(** [array::index_mut_slice]: backward function 0
+ Source: 'src/array.rs', lines 60:0-60:58 *)
let index_mut_slice_back
(t : Type0) (s : slice t) (i : usize) (ret : t) : result (slice t) =
slice_update_usize t s i ret
-(** [array::slice_subslice_shared_]: forward function *)
+(** [array::slice_subslice_shared_]: forward function
+ Source: 'src/array.rs', lines 64:0-64:70 *)
let slice_subslice_shared_
(x : slice u32) (y : usize) (z : usize) : result (slice u32) =
core_slice_index_Slice_index u32 (core_ops_range_Range usize)
- (core_slice_index_Range_coresliceindexSliceIndexInst u32) x
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32) x
{ start = y; end_ = z }
-(** [array::slice_subslice_mut_]: forward function *)
+(** [array::slice_subslice_mut_]: forward function
+ Source: 'src/array.rs', lines 68:0-68:75 *)
let slice_subslice_mut_
(x : slice u32) (y : usize) (z : usize) : result (slice u32) =
core_slice_index_Slice_index_mut u32 (core_ops_range_Range usize)
- (core_slice_index_Range_coresliceindexSliceIndexInst u32) x
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32) x
{ start = y; end_ = z }
-(** [array::slice_subslice_mut_]: backward function 0 *)
+(** [array::slice_subslice_mut_]: backward function 0
+ Source: 'src/array.rs', lines 68:0-68:75 *)
let slice_subslice_mut__back
(x : slice u32) (y : usize) (z : usize) (ret : slice u32) :
result (slice u32)
=
core_slice_index_Slice_index_mut_back u32 (core_ops_range_Range usize)
- (core_slice_index_Range_coresliceindexSliceIndexInst u32) x
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32) x
{ start = y; end_ = z } ret
-(** [array::array_to_slice_shared_]: forward function *)
+(** [array::array_to_slice_shared_]: forward function
+ Source: 'src/array.rs', lines 72:0-72:54 *)
let array_to_slice_shared_ (x : array u32 32) : result (slice u32) =
array_to_slice u32 32 x
-(** [array::array_to_slice_mut_]: forward function *)
+(** [array::array_to_slice_mut_]: forward function
+ Source: 'src/array.rs', lines 76:0-76:59 *)
let array_to_slice_mut_ (x : array u32 32) : result (slice u32) =
array_to_slice u32 32 x
-(** [array::array_to_slice_mut_]: backward function 0 *)
+(** [array::array_to_slice_mut_]: backward function 0
+ Source: 'src/array.rs', lines 76:0-76:59 *)
let array_to_slice_mut__back
(x : array u32 32) (ret : slice u32) : result (array u32 32) =
array_from_slice u32 32 x ret
-(** [array::array_subslice_shared_]: forward function *)
+(** [array::array_subslice_shared_]: forward function
+ Source: 'src/array.rs', lines 80:0-80:74 *)
let array_subslice_shared_
(x : array u32 32) (y : usize) (z : usize) : result (slice u32) =
core_array_Array_index u32 (core_ops_range_Range usize) 32
- (core_slice_index_Slice_coreopsindexIndexInst u32 (core_ops_range_Range
- usize) (core_slice_index_Range_coresliceindexSliceIndexInst u32)) x
+ (core_ops_index_IndexSliceTIInst u32 (core_ops_range_Range usize)
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32)) x
{ start = y; end_ = z }
-(** [array::array_subslice_mut_]: forward function *)
+(** [array::array_subslice_mut_]: forward function
+ Source: 'src/array.rs', lines 84:0-84:79 *)
let array_subslice_mut_
(x : array u32 32) (y : usize) (z : usize) : result (slice u32) =
core_array_Array_index_mut u32 (core_ops_range_Range usize) 32
- (core_slice_index_Slice_coreopsindexIndexMutInst u32 (core_ops_range_Range
- usize) (core_slice_index_Range_coresliceindexSliceIndexInst u32)) x
+ (core_ops_index_IndexMutSliceTIInst u32 (core_ops_range_Range usize)
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32)) x
{ start = y; end_ = z }
-(** [array::array_subslice_mut_]: backward function 0 *)
+(** [array::array_subslice_mut_]: backward function 0
+ Source: 'src/array.rs', lines 84:0-84:79 *)
let array_subslice_mut__back
(x : array u32 32) (y : usize) (z : usize) (ret : slice u32) :
result (array u32 32)
=
core_array_Array_index_mut_back u32 (core_ops_range_Range usize) 32
- (core_slice_index_Slice_coreopsindexIndexMutInst u32 (core_ops_range_Range
- usize) (core_slice_index_Range_coresliceindexSliceIndexInst u32)) x
+ (core_ops_index_IndexMutSliceTIInst u32 (core_ops_range_Range usize)
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32)) x
{ start = y; end_ = z } ret
-(** [array::index_slice_0]: forward function *)
+(** [array::index_slice_0]: forward function
+ Source: 'src/array.rs', lines 88:0-88:38 *)
let index_slice_0 (t : Type0) (s : slice t) : result t =
slice_index_usize t s 0
-(** [array::index_array_0]: forward function *)
+(** [array::index_array_0]: forward function
+ Source: 'src/array.rs', lines 92:0-92:42 *)
let index_array_0 (t : Type0) (s : array t 32) : result t =
array_index_usize t 32 s 0
-(** [array::index_index_array]: forward function *)
+(** [array::index_index_array]: forward function
+ Source: 'src/array.rs', lines 103:0-103:71 *)
let index_index_array
(s : array (array u32 32) 32) (i : usize) (j : usize) : result u32 =
let* a = array_index_usize (array u32 32) 32 s i in
array_index_usize u32 32 a j
-(** [array::update_update_array]: forward function *)
+(** [array::update_update_array]: forward function
+ Source: 'src/array.rs', lines 114:0-114:70 *)
let update_update_array
(s : array (array u32 32) 32) (i : usize) (j : usize) : result unit =
let* a = array_index_usize (array u32 32) 32 s i in
@@ -155,28 +183,34 @@ let update_update_array
let* _ = array_update_usize (array u32 32) 32 s i a0 in
Return ()
-(** [array::array_local_deep_copy]: forward function *)
+(** [array::array_local_deep_copy]: forward function
+ Source: 'src/array.rs', lines 118:0-118:43 *)
let array_local_deep_copy (x : array u32 32) : result unit =
Return ()
-(** [array::take_array]: forward function *)
+(** [array::take_array]: forward function
+ Source: 'src/array.rs', lines 122:0-122:30 *)
let take_array (a : array u32 2) : result unit =
Return ()
-(** [array::take_array_borrow]: forward function *)
+(** [array::take_array_borrow]: forward function
+ Source: 'src/array.rs', lines 123:0-123:38 *)
let take_array_borrow (a : array u32 2) : result unit =
Return ()
-(** [array::take_slice]: forward function *)
+(** [array::take_slice]: forward function
+ Source: 'src/array.rs', lines 124:0-124:28 *)
let take_slice (s : slice u32) : result unit =
Return ()
(** [array::take_mut_slice]: merged forward/backward function
- (there is a single backward function, and the forward function returns ()) *)
+ (there is a single backward function, and the forward function returns ())
+ Source: 'src/array.rs', lines 125:0-125:36 *)
let take_mut_slice (s : slice u32) : result (slice u32) =
Return s
-(** [array::take_all]: forward function *)
+(** [array::take_all]: forward function
+ Source: 'src/array.rs', lines 127:0-127:17 *)
let take_all : result unit =
let* _ = take_array (mk_array u32 2 [ 0; 0 ]) in
let* _ = take_array_borrow (mk_array u32 2 [ 0; 0 ]) in
@@ -187,27 +221,33 @@ let take_all : result unit =
let* _ = array_from_slice u32 2 (mk_array u32 2 [ 0; 0 ]) s1 in
Return ()
-(** [array::index_array]: forward function *)
+(** [array::index_array]: forward function
+ Source: 'src/array.rs', lines 141:0-141:38 *)
let index_array (x : array u32 2) : result u32 =
array_index_usize u32 2 x 0
-(** [array::index_array_borrow]: forward function *)
+(** [array::index_array_borrow]: forward function
+ Source: 'src/array.rs', lines 144:0-144:46 *)
let index_array_borrow (x : array u32 2) : result u32 =
array_index_usize u32 2 x 0
-(** [array::index_slice_u32_0]: forward function *)
+(** [array::index_slice_u32_0]: forward function
+ Source: 'src/array.rs', lines 148:0-148:42 *)
let index_slice_u32_0 (x : slice u32) : result u32 =
slice_index_usize u32 x 0
-(** [array::index_mut_slice_u32_0]: forward function *)
+(** [array::index_mut_slice_u32_0]: forward function
+ Source: 'src/array.rs', lines 152:0-152:50 *)
let index_mut_slice_u32_0 (x : slice u32) : result u32 =
slice_index_usize u32 x 0
-(** [array::index_mut_slice_u32_0]: backward function 0 *)
+(** [array::index_mut_slice_u32_0]: backward function 0
+ Source: 'src/array.rs', lines 152:0-152:50 *)
let index_mut_slice_u32_0_back (x : slice u32) : result (slice u32) =
let* _ = slice_index_usize u32 x 0 in Return x
-(** [array::index_all]: forward function *)
+(** [array::index_all]: forward function
+ Source: 'src/array.rs', lines 156:0-156:25 *)
let index_all : result u32 =
let* i = index_array (mk_array u32 2 [ 0; 0 ]) in
let* i0 = index_array (mk_array u32 2 [ 0; 0 ]) in
@@ -224,21 +264,25 @@ let index_all : result u32 =
let* _ = array_from_slice u32 2 (mk_array u32 2 [ 0; 0 ]) s1 in
Return i7
-(** [array::update_array]: forward function *)
+(** [array::update_array]: forward function
+ Source: 'src/array.rs', lines 170:0-170:36 *)
let update_array (x : array u32 2) : result unit =
let* _ = array_update_usize u32 2 x 0 1 in Return ()
(** [array::update_array_mut_borrow]: merged forward/backward function
- (there is a single backward function, and the forward function returns ()) *)
+ (there is a single backward function, and the forward function returns ())
+ Source: 'src/array.rs', lines 173:0-173:48 *)
let update_array_mut_borrow (x : array u32 2) : result (array u32 2) =
array_update_usize u32 2 x 0 1
(** [array::update_mut_slice]: merged forward/backward function
- (there is a single backward function, and the forward function returns ()) *)
+ (there is a single backward function, and the forward function returns ())
+ Source: 'src/array.rs', lines 176:0-176:38 *)
let update_mut_slice (x : slice u32) : result (slice u32) =
slice_update_usize u32 x 0 1
-(** [array::update_all]: forward function *)
+(** [array::update_all]: forward function
+ Source: 'src/array.rs', lines 180:0-180:19 *)
let update_all : result unit =
let* _ = update_array (mk_array u32 2 [ 0; 0 ]) in
let* x = update_array_mut_borrow (mk_array u32 2 [ 0; 0 ]) in
@@ -247,44 +291,49 @@ let update_all : result unit =
let* _ = array_from_slice u32 2 x s0 in
Return ()
-(** [array::range_all]: forward function *)
+(** [array::range_all]: forward function
+ Source: 'src/array.rs', lines 191:0-191:18 *)
let range_all : result unit =
let* s =
core_array_Array_index_mut u32 (core_ops_range_Range usize) 4
- (core_slice_index_Slice_coreopsindexIndexMutInst u32
- (core_ops_range_Range usize)
- (core_slice_index_Range_coresliceindexSliceIndexInst u32))
+ (core_ops_index_IndexMutSliceTIInst u32 (core_ops_range_Range usize)
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32))
(mk_array u32 4 [ 0; 0; 0; 0 ]) { start = 1; end_ = 3 } in
let* s0 = update_mut_slice s in
let* _ =
core_array_Array_index_mut_back u32 (core_ops_range_Range usize) 4
- (core_slice_index_Slice_coreopsindexIndexMutInst u32
- (core_ops_range_Range usize)
- (core_slice_index_Range_coresliceindexSliceIndexInst u32))
+ (core_ops_index_IndexMutSliceTIInst u32 (core_ops_range_Range usize)
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32))
(mk_array u32 4 [ 0; 0; 0; 0 ]) { start = 1; end_ = 3 } s0 in
Return ()
-(** [array::deref_array_borrow]: forward function *)
+(** [array::deref_array_borrow]: forward function
+ Source: 'src/array.rs', lines 200:0-200:46 *)
let deref_array_borrow (x : array u32 2) : result u32 =
array_index_usize u32 2 x 0
-(** [array::deref_array_mut_borrow]: forward function *)
+(** [array::deref_array_mut_borrow]: forward function
+ Source: 'src/array.rs', lines 205:0-205:54 *)
let deref_array_mut_borrow (x : array u32 2) : result u32 =
array_index_usize u32 2 x 0
-(** [array::deref_array_mut_borrow]: backward function 0 *)
+(** [array::deref_array_mut_borrow]: backward function 0
+ Source: 'src/array.rs', lines 205:0-205:54 *)
let deref_array_mut_borrow_back (x : array u32 2) : result (array u32 2) =
let* _ = array_index_usize u32 2 x 0 in Return x
-(** [array::take_array_t]: forward function *)
+(** [array::take_array_t]: forward function
+ Source: 'src/array.rs', lines 213:0-213:31 *)
let take_array_t (a : array aB_t 2) : result unit =
Return ()
-(** [array::non_copyable_array]: forward function *)
+(** [array::non_copyable_array]: forward function
+ Source: 'src/array.rs', lines 215:0-215:27 *)
let non_copyable_array : result unit =
let* _ = take_array_t (mk_array aB_t 2 [ AB_A; AB_B ]) in Return ()
-(** [array::sum]: loop 0: forward function *)
+(** [array::sum]: loop 0: forward function
+ Source: 'src/array.rs', lines 228:0-236:1 *)
let rec sum_loop
(s : slice u32) (sum0 : u32) (i : usize) :
Tot (result u32) (decreases (sum_loop_decreases s sum0 i))
@@ -298,11 +347,13 @@ let rec sum_loop
sum_loop s sum1 i2
else Return sum0
-(** [array::sum]: forward function *)
+(** [array::sum]: forward function
+ Source: 'src/array.rs', lines 228:0-228:28 *)
let sum (s : slice u32) : result u32 =
sum_loop s 0 0
-(** [array::sum2]: loop 0: forward function *)
+(** [array::sum2]: loop 0: forward function
+ Source: 'src/array.rs', lines 238:0-247:1 *)
let rec sum2_loop
(s : slice u32) (s2 : slice u32) (sum0 : u32) (i : usize) :
Tot (result u32) (decreases (sum2_loop_decreases s s2 sum0 i))
@@ -318,35 +369,41 @@ let rec sum2_loop
sum2_loop s s2 sum1 i4
else Return sum0
-(** [array::sum2]: forward function *)
+(** [array::sum2]: forward function
+ Source: 'src/array.rs', lines 238:0-238:41 *)
let sum2 (s : slice u32) (s2 : slice u32) : result u32 =
let i = slice_len u32 s in
let i0 = slice_len u32 s2 in
if not (i = i0) then Fail Failure else sum2_loop s s2 0 0
-(** [array::f0]: forward function *)
+(** [array::f0]: forward function
+ Source: 'src/array.rs', lines 249:0-249:11 *)
let f0 : result unit =
let* s = array_to_slice u32 2 (mk_array u32 2 [ 1; 2 ]) in
let* s0 = slice_update_usize u32 s 0 1 in
let* _ = array_from_slice u32 2 (mk_array u32 2 [ 1; 2 ]) s0 in
Return ()
-(** [array::f1]: forward function *)
+(** [array::f1]: forward function
+ Source: 'src/array.rs', lines 254:0-254:11 *)
let f1 : result unit =
let* _ = array_update_usize u32 2 (mk_array u32 2 [ 1; 2 ]) 0 1 in Return ()
-(** [array::f2]: forward function *)
+(** [array::f2]: forward function
+ Source: 'src/array.rs', lines 259:0-259:17 *)
let f2 (i : u32) : result unit =
Return ()
-(** [array::f4]: forward function *)
+(** [array::f4]: forward function
+ Source: 'src/array.rs', lines 268:0-268:54 *)
let f4 (x : array u32 32) (y : usize) (z : usize) : result (slice u32) =
core_array_Array_index u32 (core_ops_range_Range usize) 32
- (core_slice_index_Slice_coreopsindexIndexInst u32 (core_ops_range_Range
- usize) (core_slice_index_Range_coresliceindexSliceIndexInst u32)) x
+ (core_ops_index_IndexSliceTIInst u32 (core_ops_range_Range usize)
+ (core_slice_index_SliceIndexRangeUsizeSliceTInst u32)) x
{ start = y; end_ = z }
-(** [array::f3]: forward function *)
+(** [array::f3]: forward function
+ Source: 'src/array.rs', lines 261:0-261:18 *)
let f3 : result u32 =
let* i = array_index_usize u32 2 (mk_array u32 2 [ 1; 2 ]) 0 in
let* _ = f2 i in
@@ -355,15 +412,18 @@ let f3 : result u32 =
let* s0 = f4 b 16 18 in
sum2 s s0
-(** [array::SZ] *)
+(** [array::SZ]
+ Source: 'src/array.rs', lines 272:0-272:19 *)
let sz_body : result usize = Return 32
let sz_c : usize = eval_global sz_body
-(** [array::f5]: forward function *)
+(** [array::f5]: forward function
+ Source: 'src/array.rs', lines 275:0-275:31 *)
let f5 (x : array u32 32) : result u32 =
array_index_usize u32 32 x 0
-(** [array::ite]: forward function *)
+(** [array::ite]: forward function
+ Source: 'src/array.rs', lines 280:0-280:12 *)
let ite : result unit =
let* s = array_to_slice u32 2 (mk_array u32 2 [ 0; 0 ]) in
let* s0 = array_to_slice u32 2 (mk_array u32 2 [ 0; 0 ]) in
diff --git a/tests/fstar/array/Array.Types.fst b/tests/fstar/array/Array.Types.fst
index 4e8d5566..312f6018 100644
--- a/tests/fstar/array/Array.Types.fst
+++ b/tests/fstar/array/Array.Types.fst
@@ -5,6 +5,7 @@ open Primitives
#set-options "--z3rlimit 50 --fuel 1 --ifuel 1"
-(** [array::AB] *)
+(** [array::AB]
+ Source: 'src/array.rs', lines 3:0-3:11 *)
type aB_t = | AB_A : aB_t | AB_B : aB_t
diff --git a/tests/fstar/array/Primitives.fst b/tests/fstar/array/Primitives.fst
index 3297803c..94322ead 100644
--- a/tests/fstar/array/Primitives.fst
+++ b/tests/fstar/array/Primitives.fst
@@ -351,14 +351,14 @@ let alloc_boxed_Box_deref_mut (t : Type0) (x : t) : result t = Return x
let alloc_boxed_Box_deref_mut_back (t : Type) (_ : t) (x : t) : result t = Return x
// Trait instance
-let alloc_boxed_Box_coreOpsDerefInst (self : Type0) : core_ops_deref_Deref self = {
+let alloc_boxed_Box_coreopsDerefInst (self : Type0) : core_ops_deref_Deref self = {
target = self;
deref = alloc_boxed_Box_deref self;
}
// Trait instance
-let alloc_boxed_Box_coreOpsDerefMutInst (self : Type0) : core_ops_deref_DerefMut self = {
- derefInst = alloc_boxed_Box_coreOpsDerefInst self;
+let alloc_boxed_Box_coreopsDerefMutInst (self : Type0) : core_ops_deref_DerefMut self = {
+ derefInst = alloc_boxed_Box_coreopsDerefInst self;
deref_mut = alloc_boxed_Box_deref_mut self;
deref_mut_back = alloc_boxed_Box_deref_mut_back self;
}
@@ -483,23 +483,23 @@ let core_slice_index_Slice_index
| Some x -> Return x
// [core::slice::index::Range:::get]: forward function
-let core_slice_index_Range_get (t : Type0) (i : core_ops_range_Range usize) (s : slice t) :
+let core_slice_index_RangeUsize_get (t : Type0) (i : core_ops_range_Range usize) (s : slice t) :
result (option (slice t)) =
admit () // TODO
// [core::slice::index::Range::get_mut]: forward function
-let core_slice_index_Range_get_mut
+let core_slice_index_RangeUsize_get_mut
(t : Type0) : core_ops_range_Range usize → slice t → result (option (slice t)) =
admit () // TODO
// [core::slice::index::Range::get_mut]: backward function 0
-let core_slice_index_Range_get_mut_back
+let core_slice_index_RangeUsize_get_mut_back
(t : Type0) :
core_ops_range_Range usize → slice t → option (slice t) → result (slice t) =
admit () // TODO
// [core::slice::index::Range::get_unchecked]: forward function
-let core_slice_index_Range_get_unchecked
+let core_slice_index_RangeUsize_get_unchecked
(t : Type0) :
core_ops_range_Range usize → const_raw_ptr (slice t) → result (const_raw_ptr (slice t)) =
// Don't know what the model should be - for now we always fail to make
@@ -507,7 +507,7 @@ let core_slice_index_Range_get_unchecked
fun _ _ -> Fail Failure
// [core::slice::index::Range::get_unchecked_mut]: forward function
-let core_slice_index_Range_get_unchecked_mut
+let core_slice_index_RangeUsize_get_unchecked_mut
(t : Type0) :
core_ops_range_Range usize → mut_raw_ptr (slice t) → result (mut_raw_ptr (slice t)) =
// Don't know what the model should be - for now we always fail to make
@@ -515,17 +515,17 @@ let core_slice_index_Range_get_unchecked_mut
fun _ _ -> Fail Failure
// [core::slice::index::Range::index]: forward function
-let core_slice_index_Range_index
+let core_slice_index_RangeUsize_index
(t : Type0) : core_ops_range_Range usize → slice t → result (slice t) =
admit () // TODO
// [core::slice::index::Range::index_mut]: forward function
-let core_slice_index_Range_index_mut
+let core_slice_index_RangeUsize_index_mut
(t : Type0) : core_ops_range_Range usize → slice t → result (slice t) =
admit () // TODO
// [core::slice::index::Range::index_mut]: backward function 0
-let core_slice_index_Range_index_mut_back
+let core_slice_index_RangeUsize_index_mut_back
(t : Type0) : core_ops_range_Range usize → slice t → slice t → result (slice t) =
admit () // TODO
@@ -559,44 +559,44 @@ let core_array_Array_index_mut_back
(a : array t n) (i : idx) (x : inst.indexInst.output) : result (array t n) =
admit () // TODO
-// Trait implementation: [core::slice::index::[T]]
-let core_slice_index_Slice_coreopsindexIndexInst (t idx : Type0)
- (inst : core_slice_index_SliceIndex idx (slice t)) :
- core_ops_index_Index (slice t) idx = {
- output = inst.output;
- index = core_slice_index_Slice_index t idx inst;
-}
-
// Trait implementation: [core::slice::index::private_slice_index::Range]
-let core_slice_index_private_slice_index_Range_coresliceindexprivate_slice_indexSealedInst
+let core_slice_index_private_slice_index_SealedRangeUsizeInst
: core_slice_index_private_slice_index_Sealed (core_ops_range_Range usize) = ()
// Trait implementation: [core::slice::index::Range]
-let core_slice_index_Range_coresliceindexSliceIndexInst (t : Type0) :
+let core_slice_index_SliceIndexRangeUsizeSliceTInst (t : Type0) :
core_slice_index_SliceIndex (core_ops_range_Range usize) (slice t) = {
- sealedInst = core_slice_index_private_slice_index_Range_coresliceindexprivate_slice_indexSealedInst;
+ sealedInst = core_slice_index_private_slice_index_SealedRangeUsizeInst;
output = slice t;
- get = core_slice_index_Range_get t;
- get_mut = core_slice_index_Range_get_mut t;
- get_mut_back = core_slice_index_Range_get_mut_back t;
- get_unchecked = core_slice_index_Range_get_unchecked t;
- get_unchecked_mut = core_slice_index_Range_get_unchecked_mut t;
- index = core_slice_index_Range_index t;
- index_mut = core_slice_index_Range_index_mut t;
- index_mut_back = core_slice_index_Range_index_mut_back t;
+ get = core_slice_index_RangeUsize_get t;
+ get_mut = core_slice_index_RangeUsize_get_mut t;
+ get_mut_back = core_slice_index_RangeUsize_get_mut_back t;
+ get_unchecked = core_slice_index_RangeUsize_get_unchecked t;
+ get_unchecked_mut = core_slice_index_RangeUsize_get_unchecked_mut t;
+ index = core_slice_index_RangeUsize_index t;
+ index_mut = core_slice_index_RangeUsize_index_mut t;
+ index_mut_back = core_slice_index_RangeUsize_index_mut_back t;
+}
+
+// Trait implementation: [core::slice::index::[T]]
+let core_ops_index_IndexSliceTIInst (t idx : Type0)
+ (inst : core_slice_index_SliceIndex idx (slice t)) :
+ core_ops_index_Index (slice t) idx = {
+ output = inst.output;
+ index = core_slice_index_Slice_index t idx inst;
}
// Trait implementation: [core::slice::index::[T]]
-let core_slice_index_Slice_coreopsindexIndexMutInst (t idx : Type0)
+let core_ops_index_IndexMutSliceTIInst (t idx : Type0)
(inst : core_slice_index_SliceIndex idx (slice t)) :
core_ops_index_IndexMut (slice t) idx = {
- indexInst = core_slice_index_Slice_coreopsindexIndexInst t idx inst;
+ indexInst = core_ops_index_IndexSliceTIInst t idx inst;
index_mut = core_slice_index_Slice_index_mut t idx inst;
index_mut_back = core_slice_index_Slice_index_mut_back t idx inst;
}
// Trait implementation: [core::array::[T; N]]
-let core_array_Array_coreopsindexIndexInst (t idx : Type0) (n : usize)
+let core_ops_index_IndexArrayInst (t idx : Type0) (n : usize)
(inst : core_ops_index_Index (slice t) idx) :
core_ops_index_Index (array t n) idx = {
output = inst.output;
@@ -604,10 +604,10 @@ let core_array_Array_coreopsindexIndexInst (t idx : Type0) (n : usize)
}
// Trait implementation: [core::array::[T; N]]
-let core_array_Array_coreopsindexIndexMutInst (t idx : Type0) (n : usize)
+let core_ops_index_IndexMutArrayIInst (t idx : Type0) (n : usize)
(inst : core_ops_index_IndexMut (slice t) idx) :
core_ops_index_IndexMut (array t n) idx = {
- indexInst = core_array_Array_coreopsindexIndexInst t idx n inst.indexInst;
+ indexInst = core_ops_index_IndexArrayInst t idx n inst.indexInst;
index_mut = core_array_Array_index_mut t idx n inst;
index_mut_back = core_array_Array_index_mut_back t idx n inst;
}
@@ -651,13 +651,13 @@ let core_slice_index_usize_index_mut_back
admit () // TODO
// Trait implementation: [core::slice::index::private_slice_index::usize]
-let core_slice_index_private_slice_index_usize_coresliceindexprivate_slice_indexSealedInst
+let core_slice_index_private_slice_index_SealedUsizeInst
: core_slice_index_private_slice_index_Sealed usize = ()
// Trait implementation: [core::slice::index::usize]
-let core_slice_index_usize_coresliceindexSliceIndexInst (t : Type0) :
+let core_slice_index_SliceIndexUsizeSliceTInst (t : Type0) :
core_slice_index_SliceIndex usize (slice t) = {
- sealedInst = core_slice_index_private_slice_index_usize_coresliceindexprivate_slice_indexSealedInst;
+ sealedInst = core_slice_index_private_slice_index_SealedUsizeInst;
output = t;
get = core_slice_index_usize_get t;
get_mut = core_slice_index_usize_get_mut t;
@@ -706,24 +706,24 @@ let alloc_vec_Vec_coreopsindexIndexMutInst (t idx : Type0)
let alloc_vec_Vec_index_eq (#a : Type0) (v : alloc_vec_Vec a) (i : usize) :
Lemma (
- alloc_vec_Vec_index a usize (core_slice_index_usize_coresliceindexSliceIndexInst a) v i ==
+ alloc_vec_Vec_index a usize (core_slice_index_SliceIndexUsizeSliceTInst a) v i ==
alloc_vec_Vec_index_usize v i)
- [SMTPat (alloc_vec_Vec_index a usize (core_slice_index_usize_coresliceindexSliceIndexInst a) v i)]
+ [SMTPat (alloc_vec_Vec_index a usize (core_slice_index_SliceIndexUsizeSliceTInst a) v i)]
=
admit()
let alloc_vec_Vec_index_mut_eq (#a : Type0) (v : alloc_vec_Vec a) (i : usize) :
Lemma (
- alloc_vec_Vec_index_mut a usize (core_slice_index_usize_coresliceindexSliceIndexInst a) v i ==
+ alloc_vec_Vec_index_mut a usize (core_slice_index_SliceIndexUsizeSliceTInst a) v i ==
alloc_vec_Vec_index_usize v i)
- [SMTPat (alloc_vec_Vec_index_mut a usize (core_slice_index_usize_coresliceindexSliceIndexInst a) v i)]
+ [SMTPat (alloc_vec_Vec_index_mut a usize (core_slice_index_SliceIndexUsizeSliceTInst a) v i)]
=
admit()
let alloc_vec_Vec_index_mut_back_eq (#a : Type0) (v : alloc_vec_Vec a) (i : usize) (x : a) :
Lemma (
- alloc_vec_Vec_index_mut_back a usize (core_slice_index_usize_coresliceindexSliceIndexInst a) v i x ==
+ alloc_vec_Vec_index_mut_back a usize (core_slice_index_SliceIndexUsizeSliceTInst a) v i x ==
alloc_vec_Vec_update_usize v i x)
- [SMTPat (alloc_vec_Vec_index_mut_back a usize (core_slice_index_usize_coresliceindexSliceIndexInst a) v i x)]
+ [SMTPat (alloc_vec_Vec_index_mut_back a usize (core_slice_index_SliceIndexUsizeSliceTInst a) v i x)]
=
admit()