mirror of
https://github.com/c-cube/sidekick.git
synced 2025-12-06 11:15:43 -05:00
test: update expected results
This commit is contained in:
parent
737a11504d
commit
0f21cf069e
3 changed files with 25 additions and 22 deletions
3
Makefile
3
Makefile
|
|
@ -27,6 +27,9 @@ clean:
|
||||||
test:
|
test:
|
||||||
@dune runtest $(OPTS) --force --no-buffer
|
@dune runtest $(OPTS) --force --no-buffer
|
||||||
|
|
||||||
|
test-promote:
|
||||||
|
@dune runtest $(OPTS) --force --no-buffer --auto-promote
|
||||||
|
|
||||||
TESTOPTS ?= -j $(J) -c tests/benchpress.sexp --progress
|
TESTOPTS ?= -j $(J) -c tests/benchpress.sexp --progress
|
||||||
TESTTOOL=benchpress
|
TESTTOOL=benchpress
|
||||||
DATE=$(shell date +%FT%H:%M)
|
DATE=$(shell date +%FT%H:%M)
|
||||||
|
|
|
||||||
30
doc/guide.md
30
doc/guide.md
|
|
@ -209,10 +209,10 @@ We start with `p = q`.
|
||||||
- : Solver.res =
|
- : Solver.res =
|
||||||
Sidekick_smt_solver.Solver.Sat
|
Sidekick_smt_solver.Solver.Sat
|
||||||
(model
|
(model
|
||||||
(false := $@c[0])
|
|
||||||
(q := true)
|
(q := true)
|
||||||
((= Bool p q) := true)
|
|
||||||
(true := true)
|
(true := true)
|
||||||
|
((= Bool p q) := true)
|
||||||
|
(false := $@c[0])
|
||||||
(p := true))
|
(p := true))
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -246,10 +246,10 @@ Note that this doesn't affect satisfiability without assumptions:
|
||||||
- : Solver.res =
|
- : Solver.res =
|
||||||
Sidekick_smt_solver.Solver.Sat
|
Sidekick_smt_solver.Solver.Sat
|
||||||
(model
|
(model
|
||||||
(false := $@c[0])
|
|
||||||
(q := false)
|
(q := false)
|
||||||
((= Bool p q) := true)
|
|
||||||
(true := true)
|
(true := true)
|
||||||
|
((= Bool p q) := true)
|
||||||
|
(false := $@c[0])
|
||||||
(p := false))
|
(p := false))
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -264,12 +264,12 @@ We can therefore add more formulas and see where it leads us.
|
||||||
- : Solver.res =
|
- : Solver.res =
|
||||||
Sidekick_smt_solver.Solver.Sat
|
Sidekick_smt_solver.Solver.Sat
|
||||||
(model
|
(model
|
||||||
(false := $@c[0])
|
|
||||||
(q := false)
|
(q := false)
|
||||||
(r := true)
|
(r := true)
|
||||||
|
(true := true)
|
||||||
((= Bool p q) := true)
|
((= Bool p q) := true)
|
||||||
((or r (not p) false) := true)
|
((or r (not p) false) := true)
|
||||||
(true := true)
|
(false := $@c[0])
|
||||||
(p := false))
|
(p := false))
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -331,20 +331,20 @@ We can play with assertions now:
|
||||||
- : Solver.res =
|
- : Solver.res =
|
||||||
Sidekick_smt_solver.Solver.Sat
|
Sidekick_smt_solver.Solver.Sat
|
||||||
(model
|
(model
|
||||||
|
(+ := $@c[4])
|
||||||
(a := 0)
|
(a := 0)
|
||||||
((+ a) := $@c[0])
|
((+ a) := $@c[2])
|
||||||
(0 := 0)
|
(0 := 0)
|
||||||
(false := $@c[5])
|
|
||||||
(b := 0)
|
(b := 0)
|
||||||
((+ a ((* -1) b)) := $@c[7])
|
((+ a ((* -1) b)) := $@c[0])
|
||||||
((<= (+ a ((* -1) b))) := $@c[3])
|
((<= (+ a ((* -1) b))) := $@c[6])
|
||||||
((* -1) := $@c[6])
|
((* -1) := $@c[5])
|
||||||
|
(true := true)
|
||||||
((<= (+ a ((* -1) b)) 0) := true)
|
((<= (+ a ((* -1) b)) 0) := true)
|
||||||
(((* -1) b) := $@c[1])
|
(((* -1) b) := $@c[1])
|
||||||
(<= := $@c[2])
|
(<= := $@c[3])
|
||||||
($_le_comb[0] := 0)
|
(false := $@c[7])
|
||||||
(+ := $@c[4])
|
($_le_comb[0] := 0))
|
||||||
(true := true))
|
|
||||||
|
|
||||||
|
|
||||||
# let a_geq_1 = LRA_term.geq tstore a (LRA_term.const tstore (Q.of_int 1));;
|
# let a_geq_1 = LRA_term.geq tstore a (LRA_term.const tstore (Q.of_int 1));;
|
||||||
|
|
|
||||||
|
|
@ -4,21 +4,21 @@ type tower: [Type;Type(1);Type(2);Type(3);Type(4)]
|
||||||
Bool: [true, false]
|
Bool: [true, false]
|
||||||
a: a, b: b, typeof(a): Bool
|
a: a, b: b, typeof(a): Bool
|
||||||
b2b: (Bool -> Bool)
|
b2b: (Bool -> Bool)
|
||||||
p(a): p a
|
p(a): (p a)
|
||||||
p(b): p b
|
p(b): (p b)
|
||||||
q(a): q a
|
q(a): (q a)
|
||||||
q(b): q b
|
q(b): (q b)
|
||||||
typeof(p a): Bool
|
typeof(p a): Bool
|
||||||
lxy_px: (\x:Bool. (\y:Bool. p x[1]))
|
lxy_px: (\x:Bool. (\y:Bool. (p x[1])))
|
||||||
type: (Bool -> (Bool -> Bool))
|
type: (Bool -> (Bool -> Bool))
|
||||||
type of type: Type
|
type of type: Type
|
||||||
lxy_px a b: ((\x:Bool. (\y:Bool. p x[1]))) a b
|
lxy_px a b: ((\x:Bool. (\y:Bool. (p x[1]))) a b)
|
||||||
type: Bool
|
type: Bool
|
||||||
(=): =
|
(=): =
|
||||||
type: (Pi A:Type. (Pi _:A[0]. (A[1] -> Bool)))
|
type: (Pi A:Type. (Pi _:A[0]. (A[1] -> Bool)))
|
||||||
p2: p2
|
p2: p2
|
||||||
type: (tau -> (tau -> Bool))
|
type: (tau -> (tau -> Bool))
|
||||||
t2: = ((tau -> (tau -> Bool))) ((\x:tau. (\y:tau. p2 x[1] y[0]))) (= tau)
|
t2: (= (tau -> (tau -> Bool)) (\x:tau. (\y:tau. (p2 x[1] y[0]))) (= tau))
|
||||||
type: Bool
|
type: Bool
|
||||||
f_vec: vec
|
f_vec: vec
|
||||||
type: (Type -> (nat -> Type))
|
type: (Type -> (nat -> Type))
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue