Solving ../../benchmarks/true/isaplanner_prop33.smt2... Inference procedure has parameters: Ice fuel: 200 Timeout: 30s Convolution: complete Learning problem is: env: { nat -> {s, z} } definition: { (leq, P: {() -> leq([z, n2]) (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) (leq([s(nn1), z])) -> BOT} ) (min, F: {() -> min([s(u), z, z]) () -> min([z, y, z]) (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)])} (min([_jm, _km, _lm]) /\ min([_jm, _km, _mm])) -> eq_nat([_lm, _mm]) ) } properties: {(leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]), (min([i, j, i])) -> leq([i, j])} over-approximation: {min} under-approximation: {} Clause system for inference is: { () -> leq([z, n2]) -> 0 ; () -> min([s(u), z, z]) -> 0 ; () -> min([z, y, z]) -> 0 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 0 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 0 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 0 ; (leq([s(nn1), z])) -> BOT -> 0 ; (min([i, j, i])) -> leq([i, j]) -> 0 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 0 } Solving took 0.088576 seconds. Proved Model: |_ { leq -> {{{ Q={q_gen_1790, q_gen_1797}, Q_f={q_gen_1790}, Delta= { (q_gen_1797) -> q_gen_1797 () -> q_gen_1797 (q_gen_1790) -> q_gen_1790 (q_gen_1797) -> q_gen_1790 () -> q_gen_1790 } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787, q_gen_1789}, Q_f={q_gen_1787}, Delta= { (q_gen_1789) -> q_gen_1789 () -> q_gen_1789 (q_gen_1787) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| ------------------- STEPS: ------------------------------------------- Step 0, which took 0.009980 s (model generation: 0.009506, model checking: 0.000474): Model: |_ { leq -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: complete }}} ; min -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 0 ; () -> min([s(u), z, z]) -> 0 ; () -> min([z, y, z]) -> 3 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 1 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 1 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 1 ; (leq([s(nn1), z])) -> BOT -> 1 ; (min([i, j, i])) -> leq([i, j]) -> 1 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 1 } Sat witness: Yes: (() -> min([z, y, z]), { y -> z }) ------------------------------------------- Step 1, which took 0.007463 s (model generation: 0.007293, model checking: 0.000170): Model: |_ { leq -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787}, Q_f={q_gen_1787}, Delta= { () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 0 ; () -> min([s(u), z, z]) -> 3 ; () -> min([z, y, z]) -> 3 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 1 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 1 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 1 ; (leq([s(nn1), z])) -> BOT -> 1 ; (min([i, j, i])) -> leq([i, j]) -> 1 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 1 } Sat witness: Yes: (() -> min([s(u), z, z]), { u -> z }) ------------------------------------------- Step 2, which took 0.007242 s (model generation: 0.007171, model checking: 0.000071): Model: |_ { leq -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787, q_gen_1789}, Q_f={q_gen_1787}, Delta= { () -> q_gen_1789 (q_gen_1789) -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 3 ; () -> min([s(u), z, z]) -> 3 ; () -> min([z, y, z]) -> 3 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 1 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 1 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 1 ; (leq([s(nn1), z])) -> BOT -> 1 ; (min([i, j, i])) -> leq([i, j]) -> 1 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 1 } Sat witness: Yes: (() -> leq([z, n2]), { n2 -> z }) ------------------------------------------- Step 3, which took 0.005094 s (model generation: 0.004956, model checking: 0.000138): Model: |_ { leq -> {{{ Q={q_gen_1790}, Q_f={q_gen_1790}, Delta= { () -> q_gen_1790 } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787, q_gen_1789}, Q_f={q_gen_1787}, Delta= { () -> q_gen_1789 (q_gen_1789) -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 3 ; () -> min([s(u), z, z]) -> 3 ; () -> min([z, y, z]) -> 3 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 1 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 1 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 1 ; (leq([s(nn1), z])) -> BOT -> 1 ; (min([i, j, i])) -> leq([i, j]) -> 1 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 4 } Sat witness: Yes: ((min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]), { _im -> z ; u -> z ; y1 -> z }) ------------------------------------------- Step 4, which took 0.005599 s (model generation: 0.005412, model checking: 0.000187): Model: |_ { leq -> {{{ Q={q_gen_1790}, Q_f={q_gen_1790}, Delta= { () -> q_gen_1790 } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787, q_gen_1789}, Q_f={q_gen_1787}, Delta= { () -> q_gen_1789 (q_gen_1787) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 3 ; () -> min([s(u), z, z]) -> 3 ; () -> min([z, y, z]) -> 3 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 1 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 1 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 1 ; (leq([s(nn1), z])) -> BOT -> 1 ; (min([i, j, i])) -> leq([i, j]) -> 4 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 4 } Sat witness: Yes: ((min([i, j, i])) -> leq([i, j]), { i -> s(z) ; j -> s(z) }) ------------------------------------------- Step 5, which took 0.005341 s (model generation: 0.004584, model checking: 0.000757): Model: |_ { leq -> {{{ Q={q_gen_1790}, Q_f={q_gen_1790}, Delta= { (q_gen_1790) -> q_gen_1790 () -> q_gen_1790 } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787, q_gen_1789}, Q_f={q_gen_1787}, Delta= { () -> q_gen_1789 (q_gen_1787) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 3 ; () -> min([s(u), z, z]) -> 3 ; () -> min([z, y, z]) -> 6 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 2 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 2 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 2 ; (leq([s(nn1), z])) -> BOT -> 2 ; (min([i, j, i])) -> leq([i, j]) -> 4 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 4 } Sat witness: Yes: (() -> min([z, y, z]), { y -> s(z) }) ------------------------------------------- Step 6, which took 0.006204 s (model generation: 0.005813, model checking: 0.000391): Model: |_ { leq -> {{{ Q={q_gen_1790}, Q_f={q_gen_1790}, Delta= { (q_gen_1790) -> q_gen_1790 () -> q_gen_1790 } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787, q_gen_1789}, Q_f={q_gen_1787}, Delta= { () -> q_gen_1789 (q_gen_1787) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 3 ; () -> min([s(u), z, z]) -> 6 ; () -> min([z, y, z]) -> 6 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 3 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 3 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 3 ; (leq([s(nn1), z])) -> BOT -> 3 ; (min([i, j, i])) -> leq([i, j]) -> 4 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 4 } Sat witness: Yes: (() -> min([s(u), z, z]), { u -> s(z) }) ------------------------------------------- Step 7, which took 0.011786 s (model generation: 0.011319, model checking: 0.000467): Model: |_ { leq -> {{{ Q={q_gen_1790}, Q_f={q_gen_1790}, Delta= { (q_gen_1790) -> q_gen_1790 () -> q_gen_1790 } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787, q_gen_1789}, Q_f={q_gen_1787}, Delta= { (q_gen_1789) -> q_gen_1789 () -> q_gen_1789 (q_gen_1787) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 6 ; () -> min([s(u), z, z]) -> 6 ; () -> min([z, y, z]) -> 6 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 4 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 4 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 4 ; (leq([s(nn1), z])) -> BOT -> 4 ; (min([i, j, i])) -> leq([i, j]) -> 4 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 4 } Sat witness: Yes: (() -> leq([z, n2]), { n2 -> s(z) }) ------------------------------------------- Step 8, which took 0.014555 s (model generation: 0.013114, model checking: 0.001441): Model: |_ { leq -> {{{ Q={q_gen_1790, q_gen_1797}, Q_f={q_gen_1790}, Delta= { () -> q_gen_1797 (q_gen_1790) -> q_gen_1790 (q_gen_1797) -> q_gen_1790 () -> q_gen_1790 } Datatype: Convolution form: complete }}} ; min -> {{{ Q={q_gen_1787, q_gen_1789}, Q_f={q_gen_1787}, Delta= { (q_gen_1789) -> q_gen_1789 () -> q_gen_1789 (q_gen_1787) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 (q_gen_1789) -> q_gen_1787 () -> q_gen_1787 } Datatype: Convolution form: complete }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 6 ; () -> min([s(u), z, z]) -> 6 ; () -> min([z, y, z]) -> 6 ; (leq([i, j]) /\ min([i, j, _om])) -> eq_nat([_om, i]) -> 4 ; (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 4 ; (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 4 ; (leq([s(nn1), z])) -> BOT -> 4 ; (min([i, j, i])) -> leq([i, j]) -> 7 ; (min([u, y1, _im])) -> min([s(u), s(y1), s(_im)]) -> 5 } Sat witness: Yes: ((min([i, j, i])) -> leq([i, j]), { i -> z ; j -> s(s(z)) }) Total time: 0.088576 Reason for stopping: Proved