Skip to content

Commit facba34

Browse files
committed
rename valid_states, omit drop_invalids
1 parent 1ab8509 commit facba34

File tree

9 files changed

+67
-71
lines changed

9 files changed

+67
-71
lines changed

lib/lin.ml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,13 @@ end
2424
module Env : sig
2525
type t = Var.t list
2626
val gen_t_var : t -> Var.t Gen.t
27-
val valid_states : t -> Var.t -> Var.t Iter.t
27+
val valid_t_vars : t -> Var.t -> Var.t Iter.t
2828
end =
2929
struct
3030
type t = Var.t list
3131
let gen_t_var env = Gen.oneofl env
32-
let valid_states env v =
33-
let rec drop_invalids env =
34-
match env with
35-
| (v' :: env) when v' > v -> drop_invalids env
36-
| _ -> env in
37-
match drop_invalids env with
32+
let valid_t_vars env v =
33+
match List.filter (fun v' -> v' <= v) env with
3834
| v' :: _ when v' = v -> Iter.return v
3935
| env' -> Iter.of_list env'
4036
end

lib/lin_api.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,7 @@ module MakeCmd (ApiSpec : ApiSpec) : Lin.CmdSpec = struct
285285
let open Args in
286286
let fn_state i args = FnState (i,args) in
287287
match args with
288-
| FnState (i, args) -> Iter.(map fn_state (Env.valid_states env i) <*> fix_args env args)
288+
| FnState (i, args) -> Iter.(map fn_state (Env.valid_t_vars env i) <*> fix_args env args)
289289
| Fn (x, args) -> Iter.map (fun args -> Fn (x, args)) (fix_args env args)
290290
| _ -> Iter.return args
291291

src/array/lin_tests.ml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -59,17 +59,17 @@ struct
5959
| To_seq v -> Iter.map (fun v -> To_seq v) (Var.shrink v)
6060

6161
let fix_cmd env = function
62-
| Length i -> Iter.map (fun i -> Length i ) (Env.valid_states env i)
63-
| Get (i,x) -> Iter.map (fun i -> Get (i,x) ) (Env.valid_states env i)
64-
| Set (i,x,z) -> Iter.map (fun i -> Set (i,x,z) ) (Env.valid_states env i)
65-
| Sub (i,x,y) -> Iter.map (fun i -> Sub (i,x,y) ) (Env.valid_states env i)
66-
| Copy i -> Iter.map (fun i -> Copy i ) (Env.valid_states env i)
67-
| Fill (i,x,y,z) -> Iter.map (fun i -> Fill (i,x,y,z)) (Env.valid_states env i)
68-
| To_list i -> Iter.map (fun i -> To_list i ) (Env.valid_states env i)
69-
| Mem (i,z) -> Iter.map (fun i -> Mem (i,z) ) (Env.valid_states env i)
70-
| Sort i -> Iter.map (fun i -> Sort i ) (Env.valid_states env i)
71-
| To_seq i -> Iter.map (fun i -> To_seq i ) (Env.valid_states env i)
72-
| Append (i,j) -> Iter.(map (fun i j -> Append (i,j)) (Env.valid_states env i) <*> (Env.valid_states env j))
62+
| Length i -> Iter.map (fun i -> Length i ) (Env.valid_t_vars env i)
63+
| Get (i,x) -> Iter.map (fun i -> Get (i,x) ) (Env.valid_t_vars env i)
64+
| Set (i,x,z) -> Iter.map (fun i -> Set (i,x,z) ) (Env.valid_t_vars env i)
65+
| Sub (i,x,y) -> Iter.map (fun i -> Sub (i,x,y) ) (Env.valid_t_vars env i)
66+
| Copy i -> Iter.map (fun i -> Copy i ) (Env.valid_t_vars env i)
67+
| Fill (i,x,y,z) -> Iter.map (fun i -> Fill (i,x,y,z)) (Env.valid_t_vars env i)
68+
| To_list i -> Iter.map (fun i -> To_list i ) (Env.valid_t_vars env i)
69+
| Mem (i,z) -> Iter.map (fun i -> Mem (i,z) ) (Env.valid_t_vars env i)
70+
| Sort i -> Iter.map (fun i -> Sort i ) (Env.valid_t_vars env i)
71+
| To_seq i -> Iter.map (fun i -> To_seq i ) (Env.valid_t_vars env i)
72+
| Append (i,j) -> Iter.(map (fun i j -> Append (i,j)) (Env.valid_t_vars env i) <*> (Env.valid_t_vars env j))
7373

7474
open Util
7575
(*let pp_exn = Util.pp_exn*)

src/atomic/lin_tests.ml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,13 @@ struct
3434

3535
let fix_cmd env = function
3636
| Make x as cmd -> Iter.return cmd
37-
| Get i -> Iter.map (fun i -> Get i ) (Env.valid_states env i)
38-
| Set (i,x) -> Iter.map (fun i -> Set (i,x) ) (Env.valid_states env i)
39-
| Exchange (i,x) -> Iter.map (fun i -> Exchange (i,x) ) (Env.valid_states env i)
40-
| Compare_and_set (i,x,y) -> Iter.map (fun i -> Compare_and_set (i,x,y)) (Env.valid_states env i)
41-
| Fetch_and_add (i,x) -> Iter.map (fun i -> Fetch_and_add (i,x) ) (Env.valid_states env i)
42-
| Incr i -> Iter.map (fun i -> Incr i ) (Env.valid_states env i)
43-
| Decr i -> Iter.map (fun i -> Decr i ) (Env.valid_states env i)
37+
| Get i -> Iter.map (fun i -> Get i ) (Env.valid_t_vars env i)
38+
| Set (i,x) -> Iter.map (fun i -> Set (i,x) ) (Env.valid_t_vars env i)
39+
| Exchange (i,x) -> Iter.map (fun i -> Exchange (i,x) ) (Env.valid_t_vars env i)
40+
| Compare_and_set (i,x,y) -> Iter.map (fun i -> Compare_and_set (i,x,y)) (Env.valid_t_vars env i)
41+
| Fetch_and_add (i,x) -> Iter.map (fun i -> Fetch_and_add (i,x) ) (Env.valid_t_vars env i)
42+
| Incr i -> Iter.map (fun i -> Incr i ) (Env.valid_t_vars env i)
43+
| Decr i -> Iter.map (fun i -> Decr i ) (Env.valid_t_vars env i)
4444

4545
type res =
4646
| RMake of unit

src/hashtbl/lin_tests.ml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,16 +54,16 @@ struct
5454
| Length _ -> Iter.empty
5555

5656
let fix_cmd env = function
57-
| Clear i -> Iter.map (fun i -> Clear i ) (Env.valid_states env i)
58-
| Copy i -> Iter.map (fun i -> Copy i ) (Env.valid_states env i)
59-
| Add (i,x,y) -> Iter.map (fun i -> Add (i,x,y) ) (Env.valid_states env i)
60-
| Remove (i,x) -> Iter.map (fun i -> Remove (i,x) ) (Env.valid_states env i)
61-
| Find (i,x) -> Iter.map (fun i -> Find (i,x) ) (Env.valid_states env i)
62-
| Find_opt (i,x) -> Iter.map (fun i -> Find_opt (i,x) ) (Env.valid_states env i)
63-
| Find_all (i,x) -> Iter.map (fun i -> Find_all (i,x) ) (Env.valid_states env i)
64-
| Replace (i,x,y) -> Iter.map (fun i -> Replace (i,x,y)) (Env.valid_states env i)
65-
| Mem (i,x) -> Iter.map (fun i -> Mem (i,x) ) (Env.valid_states env i)
66-
| Length i -> Iter.map (fun i -> Length i ) (Env.valid_states env i)
57+
| Clear i -> Iter.map (fun i -> Clear i ) (Env.valid_t_vars env i)
58+
| Copy i -> Iter.map (fun i -> Copy i ) (Env.valid_t_vars env i)
59+
| Add (i,x,y) -> Iter.map (fun i -> Add (i,x,y) ) (Env.valid_t_vars env i)
60+
| Remove (i,x) -> Iter.map (fun i -> Remove (i,x) ) (Env.valid_t_vars env i)
61+
| Find (i,x) -> Iter.map (fun i -> Find (i,x) ) (Env.valid_t_vars env i)
62+
| Find_opt (i,x) -> Iter.map (fun i -> Find_opt (i,x) ) (Env.valid_t_vars env i)
63+
| Find_all (i,x) -> Iter.map (fun i -> Find_all (i,x) ) (Env.valid_t_vars env i)
64+
| Replace (i,x,y) -> Iter.map (fun i -> Replace (i,x,y)) (Env.valid_t_vars env i)
65+
| Mem (i,x) -> Iter.map (fun i -> Mem (i,x) ) (Env.valid_t_vars env i)
66+
| Length i -> Iter.map (fun i -> Length i ) (Env.valid_t_vars env i)
6767

6868
type res =
6969
| RClear

src/lazy/lin_tests.ml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,11 @@ struct
6363
let shrink_cmd = Shrink.nil
6464

6565
let fix_cmd env = function
66-
| Force i -> Iter.map (fun i -> Force i ) (Env.valid_states env i)
67-
| Force_val i -> Iter.map (fun i -> Force_val i ) (Env.valid_states env i)
68-
| Is_val i -> Iter.map (fun i -> Is_val i ) (Env.valid_states env i)
69-
| Map (i,f) -> Iter.map (fun i -> Map (i,f) ) (Env.valid_states env i)
70-
| Map_val (i,f) -> Iter.map (fun i -> Map_val (i,f)) (Env.valid_states env i)
66+
| Force i -> Iter.map (fun i -> Force i ) (Env.valid_t_vars env i)
67+
| Force_val i -> Iter.map (fun i -> Force_val i ) (Env.valid_t_vars env i)
68+
| Is_val i -> Iter.map (fun i -> Is_val i ) (Env.valid_t_vars env i)
69+
| Map (i,f) -> Iter.map (fun i -> Map (i,f) ) (Env.valid_t_vars env i)
70+
| Map_val (i,f) -> Iter.map (fun i -> Map_val (i,f)) (Env.valid_t_vars env i)
7171

7272
type t = int Lazy.t
7373

src/neg_tests/lin_tests_common.ml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,11 @@ module RConf_int = struct
5353
| Add (t,i) -> Iter.map (fun i -> Add (t,i)) (Shrink.int i)
5454

5555
let fix_cmd env = function
56-
| Get i -> Iter.map (fun i -> Get i ) (Env.valid_states env i)
57-
| Set (i,x) -> Iter.map (fun i -> Set (i,x)) (Env.valid_states env i)
58-
| Add (i,x) -> Iter.map (fun i -> Add (i,x)) (Env.valid_states env i)
59-
| Incr i -> Iter.map (fun i -> Incr i ) (Env.valid_states env i)
60-
| Decr i -> Iter.map (fun i -> Decr i ) (Env.valid_states env i)
56+
| Get i -> Iter.map (fun i -> Get i ) (Env.valid_t_vars env i)
57+
| Set (i,x) -> Iter.map (fun i -> Set (i,x)) (Env.valid_t_vars env i)
58+
| Add (i,x) -> Iter.map (fun i -> Add (i,x)) (Env.valid_t_vars env i)
59+
| Incr i -> Iter.map (fun i -> Incr i ) (Env.valid_t_vars env i)
60+
| Decr i -> Iter.map (fun i -> Decr i ) (Env.valid_t_vars env i)
6161

6262
type res = RGet of int | RSet | RAdd | RIncr | RDecr [@@deriving show { with_path = false }, eq]
6363

@@ -105,11 +105,11 @@ module RConf_int64 = struct
105105
| Add (t,i) -> Iter.map (fun i -> Add (t,i)) (Shrink.int64 i)
106106

107107
let fix_cmd env = function
108-
| Get i -> Iter.map (fun i -> Get i ) (Env.valid_states env i)
109-
| Set (i,x) -> Iter.map (fun i -> Set (i,x)) (Env.valid_states env i)
110-
| Add (i,x) -> Iter.map (fun i -> Add (i,x)) (Env.valid_states env i)
111-
| Incr i -> Iter.map (fun i -> Incr i ) (Env.valid_states env i)
112-
| Decr i -> Iter.map (fun i -> Decr i ) (Env.valid_states env i)
108+
| Get i -> Iter.map (fun i -> Get i ) (Env.valid_t_vars env i)
109+
| Set (i,x) -> Iter.map (fun i -> Set (i,x)) (Env.valid_t_vars env i)
110+
| Add (i,x) -> Iter.map (fun i -> Add (i,x)) (Env.valid_t_vars env i)
111+
| Incr i -> Iter.map (fun i -> Incr i ) (Env.valid_t_vars env i)
112+
| Decr i -> Iter.map (fun i -> Decr i ) (Env.valid_t_vars env i)
113113

114114
type res = RGet of int64 | RSet | RAdd | RIncr | RDecr [@@deriving show { with_path = false }, eq]
115115

@@ -161,8 +161,8 @@ struct
161161
| Member (t,i) -> Iter.map (fun i -> Member (t,i)) (T.shrink i)
162162

163163
let fix_cmd env = function
164-
| Add_node (i,x) -> Iter.map (fun i -> Add_node (i,x)) (Lin.Env.valid_states env i)
165-
| Member (i,x) -> Iter.map (fun i -> Member (i,x) ) (Lin.Env.valid_states env i)
164+
| Add_node (i,x) -> Iter.map (fun i -> Add_node (i,x)) (Lin.Env.valid_t_vars env i)
165+
| Member (i,x) -> Iter.map (fun i -> Member (i,x) ) (Lin.Env.valid_t_vars env i)
166166

167167
type res = RAdd_node of bool | RMember of bool [@@deriving show { with_path = false }, eq]
168168

src/queue/lin_tests.ml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,15 @@ module Spec =
4848
(map (fun i -> Fold (t,f,i)) (Shrink.int i)))
4949

5050
let fix_cmd env = function
51-
| Add (i,x) -> Iter.map (fun i -> Add (i,x) ) (Env.valid_states env i)
52-
| Take i -> Iter.map (fun i -> Take i ) (Env.valid_states env i)
53-
| Take_opt i -> Iter.map (fun i -> Take_opt i ) (Env.valid_states env i)
54-
| Peek i -> Iter.map (fun i -> Peek i ) (Env.valid_states env i)
55-
| Peek_opt i -> Iter.map (fun i -> Peek_opt i ) (Env.valid_states env i)
56-
| Clear i -> Iter.map (fun i -> Clear i ) (Env.valid_states env i)
57-
| Is_empty i -> Iter.map (fun i -> Is_empty i ) (Env.valid_states env i)
58-
| Fold (i,x,y) -> Iter.map (fun i -> Fold (i,x,y)) (Env.valid_states env i)
59-
| Length i -> Iter.map (fun i -> Length i ) (Env.valid_states env i)
51+
| Add (i,x) -> Iter.map (fun i -> Add (i,x) ) (Env.valid_t_vars env i)
52+
| Take i -> Iter.map (fun i -> Take i ) (Env.valid_t_vars env i)
53+
| Take_opt i -> Iter.map (fun i -> Take_opt i ) (Env.valid_t_vars env i)
54+
| Peek i -> Iter.map (fun i -> Peek i ) (Env.valid_t_vars env i)
55+
| Peek_opt i -> Iter.map (fun i -> Peek_opt i ) (Env.valid_t_vars env i)
56+
| Clear i -> Iter.map (fun i -> Clear i ) (Env.valid_t_vars env i)
57+
| Is_empty i -> Iter.map (fun i -> Is_empty i ) (Env.valid_t_vars env i)
58+
| Fold (i,x,y) -> Iter.map (fun i -> Fold (i,x,y)) (Env.valid_t_vars env i)
59+
| Length i -> Iter.map (fun i -> Length i ) (Env.valid_t_vars env i)
6060

6161
type res =
6262
| RAdd

src/stack/lin_tests.ml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -49,15 +49,15 @@ module Spec =
4949
(map (fun i -> Fold (t,f,i)) (Shrink.int i)))
5050

5151
let fix_cmd env = function
52-
| Push (i,x) -> Iter.map (fun i -> Push (i,x) ) (Env.valid_states env i)
53-
| Pop i -> Iter.map (fun i -> Pop i ) (Env.valid_states env i)
54-
| Pop_opt i -> Iter.map (fun i -> Pop_opt i ) (Env.valid_states env i)
55-
| Top i -> Iter.map (fun i -> Top i ) (Env.valid_states env i)
56-
| Top_opt i -> Iter.map (fun i -> Top_opt i ) (Env.valid_states env i)
57-
| Clear i -> Iter.map (fun i -> Clear i ) (Env.valid_states env i)
58-
| Is_empty i -> Iter.map (fun i -> Is_empty i ) (Env.valid_states env i)
59-
| Fold (i,f,x) -> Iter.map (fun i -> Fold (i,f,x)) (Env.valid_states env i)
60-
| Length i -> Iter.map (fun i -> Length i ) (Env.valid_states env i)
52+
| Push (i,x) -> Iter.map (fun i -> Push (i,x) ) (Env.valid_t_vars env i)
53+
| Pop i -> Iter.map (fun i -> Pop i ) (Env.valid_t_vars env i)
54+
| Pop_opt i -> Iter.map (fun i -> Pop_opt i ) (Env.valid_t_vars env i)
55+
| Top i -> Iter.map (fun i -> Top i ) (Env.valid_t_vars env i)
56+
| Top_opt i -> Iter.map (fun i -> Top_opt i ) (Env.valid_t_vars env i)
57+
| Clear i -> Iter.map (fun i -> Clear i ) (Env.valid_t_vars env i)
58+
| Is_empty i -> Iter.map (fun i -> Is_empty i ) (Env.valid_t_vars env i)
59+
| Fold (i,f,x) -> Iter.map (fun i -> Fold (i,f,x)) (Env.valid_t_vars env i)
60+
| Length i -> Iter.map (fun i -> Length i ) (Env.valid_t_vars env i)
6161

6262
type res =
6363
| RPush

0 commit comments

Comments
 (0)