Inference procedure has parameters: Ice fuel: 200 Timeout: 60s Convolution: left 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, _yu])) -> min([s(u), s(y1), s(_yu)])} (min([_zu, _av, _bv]) /\ min([_zu, _av, _cv])) -> eq_nat([_bv, _cv]) ) } properties: {(leq([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]), (min([i, j, j])) -> leq([j, i])} 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([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 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, j])) -> leq([j, i]) -> 0 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 0 } Solving took 0.102482 seconds. Proved Model: |_ { leq -> {{{ Q={q_gen_5529, q_gen_5532}, Q_f={q_gen_5529}, Delta= { (q_gen_5532) -> q_gen_5532 () -> q_gen_5532 (q_gen_5529) -> q_gen_5529 (q_gen_5532) -> q_gen_5529 () -> q_gen_5529 } Datatype: Convolution form: left }}} ; min -> {{{ Q={q_gen_5526, q_gen_5528}, Q_f={q_gen_5526}, Delta= { (q_gen_5528) -> q_gen_5528 () -> q_gen_5528 (q_gen_5526) -> q_gen_5526 (q_gen_5528) -> q_gen_5526 (q_gen_5528) -> q_gen_5526 () -> q_gen_5526 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| ------------------- STEPS: ------------------------------------------- Step 0, which took 0.008661 s (model generation: 0.008399, model checking: 0.000262): Model: |_ { leq -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; min -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} } -- 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([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 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, j])) -> leq([j, i]) -> 1 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 1 } Sat witness: Found: (() -> min([z, y, z]), { y -> z }) ------------------------------------------- Step 1, which took 0.009797 s (model generation: 0.009702, model checking: 0.000095): Model: |_ { leq -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; min -> {{{ Q={q_gen_5526}, Q_f={q_gen_5526}, Delta= { () -> q_gen_5526 } Datatype: Convolution form: left }}} } -- 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([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 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, j])) -> leq([j, i]) -> 1 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 1 } Sat witness: Found: (() -> min([s(u), z, z]), { u -> z }) ------------------------------------------- Step 2, which took 0.009568 s (model generation: 0.009514, model checking: 0.000054): Model: |_ { leq -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; min -> {{{ Q={q_gen_5526, q_gen_5528}, Q_f={q_gen_5526}, Delta= { () -> q_gen_5528 (q_gen_5528) -> q_gen_5526 () -> q_gen_5526 } Datatype: Convolution form: left }}} } -- 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([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 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, j])) -> leq([j, i]) -> 1 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 1 } Sat witness: Found: (() -> leq([z, n2]), { n2 -> z }) ------------------------------------------- Step 3, which took 0.010176 s (model generation: 0.010052, model checking: 0.000124): Model: |_ { leq -> {{{ Q={q_gen_5529}, Q_f={q_gen_5529}, Delta= { () -> q_gen_5529 } Datatype: Convolution form: left }}} ; min -> {{{ Q={q_gen_5526, q_gen_5528}, Q_f={q_gen_5526}, Delta= { () -> q_gen_5528 (q_gen_5528) -> q_gen_5526 () -> q_gen_5526 } Datatype: Convolution form: left }}} } -- 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([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 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, j])) -> leq([j, i]) -> 1 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 4 } Sat witness: Found: ((min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]), { _yu -> z ; u -> z ; y1 -> z }) ------------------------------------------- Step 4, which took 0.009798 s (model generation: 0.009710, model checking: 0.000088): Model: |_ { leq -> {{{ Q={q_gen_5529}, Q_f={q_gen_5529}, Delta= { () -> q_gen_5529 } Datatype: Convolution form: left }}} ; min -> {{{ Q={q_gen_5526, q_gen_5528}, Q_f={q_gen_5526}, Delta= { () -> q_gen_5528 (q_gen_5526) -> q_gen_5526 (q_gen_5528) -> q_gen_5526 () -> q_gen_5526 } Datatype: Convolution form: left }}} } -- 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([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 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, j])) -> leq([j, i]) -> 4 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 4 } Sat witness: Found: ((min([i, j, j])) -> leq([j, i]), { i -> s(z) ; j -> z }) ------------------------------------------- Step 5, which took 0.016051 s (model generation: 0.015927, model checking: 0.000124): Model: |_ { leq -> {{{ Q={q_gen_5529, q_gen_5532}, Q_f={q_gen_5529}, Delta= { () -> q_gen_5532 (q_gen_5532) -> q_gen_5529 () -> q_gen_5529 } Datatype: Convolution form: left }}} ; min -> {{{ Q={q_gen_5526, q_gen_5528}, Q_f={q_gen_5526}, Delta= { () -> q_gen_5528 (q_gen_5526) -> q_gen_5526 (q_gen_5528) -> q_gen_5526 () -> q_gen_5526 } Datatype: Convolution form: left }}} } -- 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([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 1 (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 4 (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 2 (leq([s(nn1), z])) -> BOT -> 2 (min([i, j, j])) -> leq([j, i]) -> 4 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 4 } Sat witness: Found: ((leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]), { nn1 -> z ; nn2 -> z }) ------------------------------------------- Step 6, which took 0.012797 s (model generation: 0.012206, model checking: 0.000591): Model: |_ { leq -> {{{ Q={q_gen_5529, q_gen_5532}, Q_f={q_gen_5529}, Delta= { () -> q_gen_5532 (q_gen_5529) -> q_gen_5529 (q_gen_5532) -> q_gen_5529 () -> q_gen_5529 } Datatype: Convolution form: left }}} ; min -> {{{ Q={q_gen_5526, q_gen_5528}, Q_f={q_gen_5526}, Delta= { () -> q_gen_5528 (q_gen_5526) -> q_gen_5526 (q_gen_5528) -> q_gen_5526 () -> q_gen_5526 } Datatype: Convolution form: left }}} } -- 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([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 2 (leq([nn1, nn2])) -> leq([s(nn1), s(nn2)]) -> 4 (leq([s(nn1), s(nn2)])) -> leq([nn1, nn2]) -> 3 (leq([s(nn1), z])) -> BOT -> 3 (min([i, j, j])) -> leq([j, i]) -> 4 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 4 } Sat witness: Found: (() -> min([z, y, z]), { y -> s(s(z)) }) ------------------------------------------- Step 7, which took 0.013059 s (model generation: 0.011423, model checking: 0.001636): Model: |_ { leq -> {{{ Q={q_gen_5529, q_gen_5532}, Q_f={q_gen_5529}, Delta= { () -> q_gen_5532 (q_gen_5529) -> q_gen_5529 (q_gen_5532) -> q_gen_5529 () -> q_gen_5529 } Datatype: Convolution form: left }}} ; min -> {{{ Q={q_gen_5526, q_gen_5528}, Q_f={q_gen_5526}, Delta= { (q_gen_5528) -> q_gen_5528 () -> q_gen_5528 (q_gen_5526) -> q_gen_5526 (q_gen_5528) -> q_gen_5526 (q_gen_5528) -> q_gen_5526 () -> q_gen_5526 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> leq([z, n2]) -> 6 () -> min([s(u), z, z]) -> 4 () -> min([z, y, z]) -> 6 (leq([j, i]) /\ min([i, j, _ev])) -> eq_nat([_ev, j]) -> 3 (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, j])) -> leq([j, i]) -> 4 (min([u, y1, _yu])) -> min([s(u), s(y1), s(_yu)]) -> 4 } Sat witness: Found: (() -> leq([z, n2]), { n2 -> s(s(z)) }) Total time: 0.102482 Reason for stopping: Proved