Solving ../../benchmarks/true/isaplanner_prop23.smt2... Inference procedure has parameters: Ice fuel: 200 Timeout: 30s Convolution: complete Learning problem is: env: { nat -> {s, z} } definition: { (max, F: {() -> max([s(u), z, s(u)]) () -> max([z, y, y]) (max([u, x2, _dt])) -> max([s(u), s(x2), s(_dt)])} (max([_et, _ft, _gt]) /\ max([_et, _ft, _ht])) -> eq_nat([_gt, _ht]) ) } properties: {(max([a, b, _it]) /\ max([b, a, _jt])) -> eq_nat([_it, _jt])} over-approximation: {max} under-approximation: {} Clause system for inference is: { () -> max([s(u), z, s(u)]) -> 0 ; () -> max([z, y, y]) -> 0 ; (max([a, b, _it]) /\ max([b, a, _jt])) -> eq_nat([_it, _jt]) -> 0 ; (max([u, x2, _dt])) -> max([s(u), s(x2), s(_dt)]) -> 0 } Solving took 0.036826 seconds. Proved Model: |_ { max -> {{{ Q={q_gen_1589, q_gen_1591}, Q_f={q_gen_1589}, Delta= { (q_gen_1591) -> q_gen_1591 () -> q_gen_1591 (q_gen_1589) -> q_gen_1589 (q_gen_1591) -> q_gen_1589 (q_gen_1591) -> q_gen_1589 () -> q_gen_1589 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| ------------------- STEPS: ------------------------------------------- Step 0, which took 0.004448 s (model generation: 0.004303, model checking: 0.000145): Model: |_ { max -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> max([s(u), z, s(u)]) -> 0 ; () -> max([z, y, y]) -> 3 ; (max([a, b, _it]) /\ max([b, a, _jt])) -> eq_nat([_it, _jt]) -> 1 ; (max([u, x2, _dt])) -> max([s(u), s(x2), s(_dt)]) -> 1 } Sat witness: Yes: (() -> max([z, y, y]), { y -> z }) ------------------------------------------- Step 1, which took 0.006459 s (model generation: 0.006315, model checking: 0.000144): Model: |_ { max -> {{{ Q={q_gen_1589}, Q_f={q_gen_1589}, Delta= { () -> q_gen_1589 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> max([s(u), z, s(u)]) -> 3 ; () -> max([z, y, y]) -> 3 ; (max([a, b, _it]) /\ max([b, a, _jt])) -> eq_nat([_it, _jt]) -> 1 ; (max([u, x2, _dt])) -> max([s(u), s(x2), s(_dt)]) -> 1 } Sat witness: Yes: (() -> max([s(u), z, s(u)]), { u -> z }) ------------------------------------------- Step 2, which took 0.006339 s (model generation: 0.005975, model checking: 0.000364): Model: |_ { max -> {{{ Q={q_gen_1589, q_gen_1591}, Q_f={q_gen_1589}, Delta= { () -> q_gen_1591 (q_gen_1591) -> q_gen_1589 () -> q_gen_1589 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> max([s(u), z, s(u)]) -> 3 ; () -> max([z, y, y]) -> 3 ; (max([a, b, _it]) /\ max([b, a, _jt])) -> eq_nat([_it, _jt]) -> 1 ; (max([u, x2, _dt])) -> max([s(u), s(x2), s(_dt)]) -> 4 } Sat witness: Yes: ((max([u, x2, _dt])) -> max([s(u), s(x2), s(_dt)]), { _dt -> z ; u -> z ; x2 -> z }) ------------------------------------------- Step 3, which took 0.004310 s (model generation: 0.004180, model checking: 0.000130): Model: |_ { max -> {{{ Q={q_gen_1589, q_gen_1591}, Q_f={q_gen_1589}, Delta= { () -> q_gen_1591 (q_gen_1589) -> q_gen_1589 (q_gen_1591) -> q_gen_1589 () -> q_gen_1589 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> max([s(u), z, s(u)]) -> 3 ; () -> max([z, y, y]) -> 6 ; (max([a, b, _it]) /\ max([b, a, _jt])) -> eq_nat([_it, _jt]) -> 2 ; (max([u, x2, _dt])) -> max([s(u), s(x2), s(_dt)]) -> 4 } Sat witness: Yes: (() -> max([z, y, y]), { y -> s(z) }) ------------------------------------------- Step 4, which took 0.004921 s (model generation: 0.004605, model checking: 0.000316): Model: |_ { max -> {{{ Q={q_gen_1589, q_gen_1591}, Q_f={q_gen_1589}, Delta= { () -> q_gen_1591 (q_gen_1589) -> q_gen_1589 (q_gen_1591) -> q_gen_1589 (q_gen_1591) -> q_gen_1589 () -> q_gen_1589 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> max([s(u), z, s(u)]) -> 6 ; () -> max([z, y, y]) -> 6 ; (max([a, b, _it]) /\ max([b, a, _jt])) -> eq_nat([_it, _jt]) -> 3 ; (max([u, x2, _dt])) -> max([s(u), s(x2), s(_dt)]) -> 4 } Sat witness: Yes: (() -> max([s(u), z, s(u)]), { u -> s(z) }) Total time: 0.036826 Reason for stopping: Proved