8 let to_true (ii : bool) (arg : bool) : bool
10 ensures { if ii then result = true else result = arg}
11 = if ii then true else arg
18 let pgmtest [@infer] [@bddinfer] () : unit = [@vc:divergent]
24 while (!x3 && not !x1 && not !x2) do
28 let tmp1 = (!x0 || !a) && not !e in
30 let tmp2 = tmp1 && !x1 && !x3 in
32 let b1 = to_true tmp1 !b in
33 let tmp3 = tmp1 && !b && !x2 in
34 let c1 = to_true tmp3 !c in
41 [@bddinfer:Assert] assert { !x0 \/ (!a at Init) -> !a } ;