Inference procedure has parameters: Ice fuel: 200 Timeout: 60s Convolution: left Learning problem is: env: { nat -> {s, z} } definition: { (plus, F: {() -> plus([n, z, n]) (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)])} (plus([_mj, _nj, _oj]) /\ plus([_mj, _nj, _pj])) -> eq_nat([_oj, _pj]) ) (le, P: {() -> le([z, s(nn2)]) (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) (le([s(nn1), z])) -> BOT (le([z, z])) -> BOT} ) } properties: {(le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj])} over-approximation: {plus} under-approximation: {} Clause system for inference is: { () -> le([z, s(nn2)]) -> 0 () -> plus([n, z, n]) -> 0 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 0 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 0 (le([s(nn1), z])) -> BOT -> 0 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 0 (le([z, z])) -> BOT -> 0 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 0 } Solving took 0.293713 seconds. Proved Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2446, q_gen_2447, q_gen_2452}, Q_f={q_gen_2433, q_gen_2436}, Delta= { (q_gen_2446) -> q_gen_2446 () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2452) -> q_gen_2452 (q_gen_2446) -> q_gen_2452 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2436) -> q_gen_2436 (q_gen_2452) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2452) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 (q_gen_2447) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| ------------------- STEPS: ------------------------------------------- Step 0, which took 0.009396 s (model generation: 0.009195, model checking: 0.000201): Model: |_ { le -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; plus -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 0 () -> plus([n, z, n]) -> 3 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 1 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 1 (le([s(nn1), z])) -> BOT -> 1 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 1 (le([z, z])) -> BOT -> 1 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 1 } Sat witness: Found: (() -> plus([n, z, n]), { n -> z }) ------------------------------------------- Step 1, which took 0.011485 s (model generation: 0.011407, model checking: 0.000078): Model: |_ { le -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 3 () -> plus([n, z, n]) -> 3 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 1 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 1 (le([s(nn1), z])) -> BOT -> 1 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 1 (le([z, z])) -> BOT -> 1 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 1 } Sat witness: Found: (() -> le([z, s(nn2)]), { nn2 -> z }) ------------------------------------------- Step 2, which took 0.009445 s (model generation: 0.009342, model checking: 0.000103): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435}, Q_f={q_gen_2434}, Delta= { () -> q_gen_2435 (q_gen_2435) -> q_gen_2434 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 3 () -> plus([n, z, n]) -> 3 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 1 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 1 (le([s(nn1), z])) -> BOT -> 1 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 1 (le([z, z])) -> BOT -> 1 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 4 } Sat witness: Found: ((plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]), { _lj -> z ; mm -> z ; n -> z }) ------------------------------------------- Step 3, which took 0.011517 s (model generation: 0.011124, model checking: 0.000393): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435}, Q_f={q_gen_2434}, Delta= { () -> q_gen_2435 (q_gen_2435) -> q_gen_2434 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2437 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 3 () -> plus([n, z, n]) -> 3 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 4 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 2 (le([s(nn1), z])) -> BOT -> 2 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 2 (le([z, z])) -> BOT -> 2 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 4 } Sat witness: Found: ((le([nn1, nn2])) -> le([s(nn1), s(nn2)]), { nn1 -> z ; nn2 -> s(z) }) ------------------------------------------- Step 4, which took 0.016644 s (model generation: 0.010001, model checking: 0.006643): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435}, Q_f={q_gen_2434}, Delta= { () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2437 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 3 () -> plus([n, z, n]) -> 6 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 4 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 3 (le([s(nn1), z])) -> BOT -> 3 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 3 (le([z, z])) -> BOT -> 3 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 4 } Sat witness: Found: (() -> plus([n, z, n]), { n -> s(s(z)) }) ------------------------------------------- Step 5, which took 0.008997 s (model generation: 0.008794, model checking: 0.000203): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435}, Q_f={q_gen_2434}, Delta= { () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437}, Q_f={q_gen_2433}, Delta= { (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2437) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 6 () -> plus([n, z, n]) -> 6 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 4 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 4 (le([s(nn1), z])) -> BOT -> 4 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 4 (le([z, z])) -> BOT -> 4 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 4 } Sat witness: Found: (() -> le([z, s(nn2)]), { nn2 -> s(z) }) ------------------------------------------- Step 6, which took 0.009797 s (model generation: 0.009449, model checking: 0.000348): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437}, Q_f={q_gen_2433}, Delta= { (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2437) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 6 () -> plus([n, z, n]) -> 6 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 4 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 4 (le([s(nn1), z])) -> BOT -> 4 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 4 (le([z, z])) -> BOT -> 4 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 7 } Sat witness: Found: ((plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]), { _lj -> s(z) ; mm -> z ; n -> s(z) }) ------------------------------------------- Step 7, which took 0.011483 s (model generation: 0.011370, model checking: 0.000113): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437, q_gen_2446}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2433) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 (q_gen_2446) -> q_gen_2433 () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 6 () -> plus([n, z, n]) -> 6 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 4 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 4 (le([s(nn1), z])) -> BOT -> 4 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 7 (le([z, z])) -> BOT -> 5 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 7 } Sat witness: Found: ((le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]), { _qj -> s(z) ; m -> s(z) ; n -> s(z) }) ------------------------------------------- Step 8, which took 0.010970 s (model generation: 0.010840, model checking: 0.000130): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 () -> q_gen_2434 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437, q_gen_2446}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2433) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 (q_gen_2446) -> q_gen_2433 () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 6 () -> plus([n, z, n]) -> 6 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 5 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 5 (le([s(nn1), z])) -> BOT -> 5 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 7 (le([z, z])) -> BOT -> 8 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 7 } Sat witness: Found: ((le([z, z])) -> BOT, { }) ------------------------------------------- Step 9, which took 0.011002 s (model generation: 0.010858, model checking: 0.000144): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2449}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2449) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 () -> q_gen_2449 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437, q_gen_2446}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2433) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 (q_gen_2446) -> q_gen_2433 () -> q_gen_2433 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 6 () -> plus([n, z, n]) -> 6 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 5 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 8 (le([s(nn1), z])) -> BOT -> 6 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 7 (le([z, z])) -> BOT -> 8 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 7 } Sat witness: Found: ((le([s(nn1), s(nn2)])) -> le([nn1, nn2]), { nn1 -> z ; nn2 -> z }) ------------------------------------------- Step 10, which took 0.011507 s (model generation: 0.011017, model checking: 0.000490): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437, q_gen_2445, q_gen_2446}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2445) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2433) -> q_gen_2445 (q_gen_2446) -> q_gen_2445 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 7 () -> plus([n, z, n]) -> 7 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 6 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 8 (le([s(nn1), z])) -> BOT -> 7 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 7 (le([z, z])) -> BOT -> 8 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 10 } Sat witness: Found: ((plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]), { _lj -> s(s(z)) ; mm -> s(z) ; n -> s(z) }) ------------------------------------------- Step 11, which took 0.011468 s (model generation: 0.011175, model checking: 0.000293): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2446, q_gen_2447}, Q_f={q_gen_2433, q_gen_2436}, Delta= { () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 (q_gen_2446) -> q_gen_2437 () -> q_gen_2437 () -> q_gen_2433 (q_gen_2436) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 7 () -> plus([n, z, n]) -> 7 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 7 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 8 (le([s(nn1), z])) -> BOT -> 7 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 10 (le([z, z])) -> BOT -> 8 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 10 } Sat witness: Found: ((le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]), { _qj -> s(s(z)) ; m -> s(z) ; n -> s(s(z)) }) ------------------------------------------- Step 12, which took 0.015698 s (model generation: 0.015111, model checking: 0.000587): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2446, q_gen_2447}, Q_f={q_gen_2433, q_gen_2436}, Delta= { () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 (q_gen_2446) -> q_gen_2437 () -> q_gen_2437 (q_gen_2436) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2437) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 8 () -> plus([n, z, n]) -> 8 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 8 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 9 (le([s(nn1), z])) -> BOT -> 8 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 10 (le([z, z])) -> BOT -> 9 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 13 } Sat witness: Found: ((plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]), { _lj -> s(s(z)) ; mm -> z ; n -> s(s(z)) }) ------------------------------------------- Step 13, which took 0.015470 s (model generation: 0.015067, model checking: 0.000403): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2437, q_gen_2445, q_gen_2446, q_gen_2452}, Q_f={q_gen_2433}, Delta= { () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2446) -> q_gen_2452 (q_gen_2445) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2433) -> q_gen_2445 (q_gen_2452) -> q_gen_2445 (q_gen_2452) -> q_gen_2445 (q_gen_2446) -> q_gen_2445 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 9 () -> plus([n, z, n]) -> 9 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 9 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 10 (le([s(nn1), z])) -> BOT -> 9 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 13 (le([z, z])) -> BOT -> 10 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 13 } Sat witness: Found: ((le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]), { _qj -> s(s(z)) ; m -> s(s(z)) ; n -> s(s(z)) }) ------------------------------------------- Step 14, which took 0.015799 s (model generation: 0.015419, model checking: 0.000380): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448, q_gen_2449}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2448) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2449) -> q_gen_2448 () -> q_gen_2449 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2446, q_gen_2447}, Q_f={q_gen_2433, q_gen_2436}, Delta= { () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 (q_gen_2446) -> q_gen_2437 () -> q_gen_2437 (q_gen_2447) -> q_gen_2433 () -> q_gen_2433 (q_gen_2436) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 10 () -> plus([n, z, n]) -> 10 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 10 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 13 (le([s(nn1), z])) -> BOT -> 10 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 13 (le([z, z])) -> BOT -> 11 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 13 } Sat witness: Found: ((le([s(nn1), s(nn2)])) -> le([nn1, nn2]), { nn1 -> s(z) ; nn2 -> s(z) }) ------------------------------------------- Step 15, which took 0.015904 s (model generation: 0.015680, model checking: 0.000224): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2440, q_gen_2446, q_gen_2447}, Q_f={q_gen_2433, q_gen_2436}, Delta= { () -> q_gen_2446 () -> q_gen_2437 (q_gen_2437) -> q_gen_2440 (q_gen_2446) -> q_gen_2440 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2436) -> q_gen_2436 (q_gen_2440) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2440) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 (q_gen_2447) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 10 () -> plus([n, z, n]) -> 13 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 11 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 13 (le([s(nn1), z])) -> BOT -> 11 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 13 (le([z, z])) -> BOT -> 11 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 13 } Sat witness: Found: (() -> plus([n, z, n]), { n -> s(s(s(z))) }) ------------------------------------------- Step 16, which took 0.015763 s (model generation: 0.015305, model checking: 0.000458): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2440, q_gen_2446, q_gen_2447}, Q_f={q_gen_2433, q_gen_2436}, Delta= { () -> q_gen_2446 () -> q_gen_2437 (q_gen_2437) -> q_gen_2440 (q_gen_2440) -> q_gen_2440 (q_gen_2446) -> q_gen_2440 (q_gen_2436) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2440) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2440) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 (q_gen_2447) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 11 () -> plus([n, z, n]) -> 13 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 12 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 13 (le([s(nn1), z])) -> BOT -> 12 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 13 (le([z, z])) -> BOT -> 12 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 16 } Sat witness: Found: ((plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]), { _lj -> s(s(z)) ; mm -> z ; n -> s(z) }) ------------------------------------------- Step 17, which took 0.016452 s (model generation: 0.016232, model checking: 0.000220): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2440, q_gen_2446, q_gen_2447}, Q_f={q_gen_2433, q_gen_2436}, Delta= { (q_gen_2446) -> q_gen_2446 () -> q_gen_2446 (q_gen_2440) -> q_gen_2437 () -> q_gen_2437 (q_gen_2437) -> q_gen_2440 (q_gen_2446) -> q_gen_2440 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2436) -> q_gen_2436 (q_gen_2440) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2440) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 (q_gen_2447) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 12 () -> plus([n, z, n]) -> 13 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 13 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 13 (le([s(nn1), z])) -> BOT -> 13 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 16 (le([z, z])) -> BOT -> 13 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 16 } Sat witness: Found: ((le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]), { _qj -> s(s(s(z))) ; m -> s(z) ; n -> s(s(s(z))) }) ------------------------------------------- Step 18, which took 0.021225 s (model generation: 0.020640, model checking: 0.000585): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2446, q_gen_2447, q_gen_2452}, Q_f={q_gen_2433, q_gen_2436}, Delta= { (q_gen_2446) -> q_gen_2446 () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2446) -> q_gen_2452 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2436) -> q_gen_2436 (q_gen_2452) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2452) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 (q_gen_2447) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 13 () -> plus([n, z, n]) -> 14 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 14 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 14 (le([s(nn1), z])) -> BOT -> 14 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 16 (le([z, z])) -> BOT -> 14 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 19 } Sat witness: Found: ((plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]), { _lj -> s(s(z)) ; mm -> s(z) ; n -> z }) ------------------------------------------- Step 19, which took 0.020547 s (model generation: 0.019660, model checking: 0.000887): Model: |_ { le -> {{{ Q={q_gen_2434, q_gen_2435, q_gen_2448}, Q_f={q_gen_2434}, Delta= { (q_gen_2435) -> q_gen_2435 () -> q_gen_2435 (q_gen_2434) -> q_gen_2434 (q_gen_2435) -> q_gen_2434 (q_gen_2448) -> q_gen_2448 () -> q_gen_2448 } Datatype: Convolution form: left }}} ; plus -> {{{ Q={q_gen_2433, q_gen_2436, q_gen_2437, q_gen_2446, q_gen_2447, q_gen_2452}, Q_f={q_gen_2433, q_gen_2436}, Delta= { (q_gen_2446) -> q_gen_2446 () -> q_gen_2446 (q_gen_2437) -> q_gen_2437 () -> q_gen_2437 (q_gen_2452) -> q_gen_2452 (q_gen_2446) -> q_gen_2452 (q_gen_2436) -> q_gen_2433 (q_gen_2437) -> q_gen_2433 () -> q_gen_2433 (q_gen_2452) -> q_gen_2436 (q_gen_2437) -> q_gen_2436 (q_gen_2452) -> q_gen_2436 (q_gen_2446) -> q_gen_2436 (q_gen_2433) -> q_gen_2447 (q_gen_2447) -> q_gen_2447 } Datatype: Convolution form: left }}} } -- Equality automata are defined for: {eq_nat} _| Teacher's answer: New clause system: { () -> le([z, s(nn2)]) -> 14 () -> plus([n, z, n]) -> 15 (le([nn1, nn2])) -> le([s(nn1), s(nn2)]) -> 15 (le([s(nn1), s(nn2)])) -> le([nn1, nn2]) -> 15 (le([s(nn1), z])) -> BOT -> 15 (le([z, m]) /\ plus([n, m, _qj])) -> le([n, _qj]) -> 17 (le([z, z])) -> BOT -> 15 (plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]) -> 22 } Sat witness: Found: ((plus([n, mm, _lj])) -> plus([n, s(mm), s(_lj)]), { _lj -> s(s(s(z))) ; mm -> s(z) ; n -> s(s(z)) }) Total time: 0.293713 Reason for stopping: Proved