Inference procedure has parameters: Ice fuel: 200 Timeout: 60s Convolution: right Learning problem is: env: { nat -> {s, z} } definition: { (plus, F: {() -> plus([n, z, n]) (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)])} (plus([_yba, _zba, _aca]) /\ plus([_yba, _zba, _bca])) -> eq_nat([_aca, _bca]) ) (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, _cca])) -> le([n, _cca])} 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, _cca])) -> le([n, _cca]) -> 0 (le([z, z])) -> BOT -> 0 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 0 } Solving took 0.338122 seconds. Proved Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5602, q_gen_5603, q_gen_5608}, Q_f={q_gen_5589, q_gen_5592}, Delta= { (q_gen_5602) -> q_gen_5602 () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5608) -> q_gen_5608 (q_gen_5602) -> q_gen_5608 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5592) -> q_gen_5592 (q_gen_5608) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5608) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 (q_gen_5603) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- Equality automata are defined for: {eq_nat} _| ------------------- STEPS: ------------------------------------------- Step 0, which took 0.009836 s (model generation: 0.009480, model checking: 0.000356): Model: |_ { le -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: right }}} ; plus -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 1 (le([z, z])) -> BOT -> 1 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 1 } Sat witness: Found: (() -> plus([n, z, n]), { n -> z }) ------------------------------------------- Step 1, which took 0.010336 s (model generation: 0.010221, model checking: 0.000115): Model: |_ { le -> {{{ Q={}, Q_f={}, Delta= { } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 1 (le([z, z])) -> BOT -> 1 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 1 } Sat witness: Found: (() -> le([z, s(nn2)]), { nn2 -> z }) ------------------------------------------- Step 2, which took 0.010380 s (model generation: 0.010147, model checking: 0.000233): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591}, Q_f={q_gen_5590}, Delta= { () -> q_gen_5591 (q_gen_5591) -> q_gen_5590 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 1 (le([z, z])) -> BOT -> 1 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 4 } Sat witness: Found: ((plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]), { _xba -> z ; mm -> z ; n -> z }) ------------------------------------------- Step 3, which took 0.010852 s (model generation: 0.010524, model checking: 0.000328): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591}, Q_f={q_gen_5590}, Delta= { () -> q_gen_5591 (q_gen_5591) -> q_gen_5590 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5593 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 2 (le([z, z])) -> BOT -> 2 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 4 } Sat witness: Found: ((le([nn1, nn2])) -> le([s(nn1), s(nn2)]), { nn1 -> z ; nn2 -> s(z) }) ------------------------------------------- Step 4, which took 0.009798 s (model generation: 0.008594, model checking: 0.001204): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591}, Q_f={q_gen_5590}, Delta= { () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5593 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 3 (le([z, z])) -> BOT -> 3 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 4 } Sat witness: Found: (() -> plus([n, z, n]), { n -> s(s(z)) }) ------------------------------------------- Step 5, which took 0.005985 s (model generation: 0.005587, model checking: 0.000398): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591}, Q_f={q_gen_5590}, Delta= { () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593}, Q_f={q_gen_5589}, Delta= { (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5593) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 4 (le([z, z])) -> BOT -> 4 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 4 } Sat witness: Found: (() -> le([z, s(nn2)]), { nn2 -> s(z) }) ------------------------------------------- Step 6, which took 0.005429 s (model generation: 0.005135, model checking: 0.000294): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593}, Q_f={q_gen_5589}, Delta= { (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5593) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 4 (le([z, z])) -> BOT -> 4 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 7 } Sat witness: Found: ((plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]), { _xba -> s(z) ; mm -> z ; n -> s(z) }) ------------------------------------------- Step 7, which took 0.011590 s (model generation: 0.011335, model checking: 0.000255): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593, q_gen_5602}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5589) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 (q_gen_5602) -> q_gen_5589 () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 7 (le([z, z])) -> BOT -> 5 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 7 } Sat witness: Found: ((le([z, m]) /\ plus([n, m, _cca])) -> le([n, _cca]), { _cca -> s(z) ; m -> s(z) ; n -> s(z) }) ------------------------------------------- Step 8, which took 0.014460 s (model generation: 0.014192, model checking: 0.000268): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 () -> q_gen_5590 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593, q_gen_5602}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5589) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 (q_gen_5602) -> q_gen_5589 () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 7 (le([z, z])) -> BOT -> 8 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 7 } Sat witness: Found: ((le([z, z])) -> BOT, { }) ------------------------------------------- Step 9, which took 0.013920 s (model generation: 0.013768, model checking: 0.000152): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5605}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5605) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 () -> q_gen_5605 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593, q_gen_5602}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5589) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 (q_gen_5602) -> q_gen_5589 () -> q_gen_5589 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 7 (le([z, z])) -> BOT -> 8 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 7 } Sat witness: Found: ((le([s(nn1), s(nn2)])) -> le([nn1, nn2]), { nn1 -> z ; nn2 -> z }) ------------------------------------------- Step 10, which took 0.014730 s (model generation: 0.013386, model checking: 0.001344): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593, q_gen_5601, q_gen_5602}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5601) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5589) -> q_gen_5601 (q_gen_5602) -> q_gen_5601 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 7 (le([z, z])) -> BOT -> 8 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 10 } Sat witness: Found: ((plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]), { _xba -> s(s(z)) ; mm -> s(z) ; n -> s(z) }) ------------------------------------------- Step 11, which took 0.015319 s (model generation: 0.014946, model checking: 0.000373): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5602, q_gen_5603}, Q_f={q_gen_5589, q_gen_5592}, Delta= { () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 (q_gen_5602) -> q_gen_5593 () -> q_gen_5593 () -> q_gen_5589 (q_gen_5592) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 10 (le([z, z])) -> BOT -> 8 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 10 } Sat witness: Found: ((le([z, m]) /\ plus([n, m, _cca])) -> le([n, _cca]), { _cca -> s(s(z)) ; m -> s(z) ; n -> s(s(z)) }) ------------------------------------------- Step 12, which took 0.017204 s (model generation: 0.016147, model checking: 0.001057): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5602, q_gen_5603}, Q_f={q_gen_5589, q_gen_5592}, Delta= { () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 (q_gen_5602) -> q_gen_5593 () -> q_gen_5593 (q_gen_5592) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5593) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 10 (le([z, z])) -> BOT -> 9 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 13 } Sat witness: Found: ((plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]), { _xba -> s(s(z)) ; mm -> z ; n -> s(s(z)) }) ------------------------------------------- Step 13, which took 0.018806 s (model generation: 0.017973, model checking: 0.000833): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5593, q_gen_5601, q_gen_5602, q_gen_5608}, Q_f={q_gen_5589}, Delta= { () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5602) -> q_gen_5608 (q_gen_5601) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5589) -> q_gen_5601 (q_gen_5608) -> q_gen_5601 (q_gen_5608) -> q_gen_5601 (q_gen_5602) -> q_gen_5601 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 13 (le([z, z])) -> BOT -> 10 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 13 } Sat witness: Found: ((le([z, m]) /\ plus([n, m, _cca])) -> le([n, _cca]), { _cca -> s(s(z)) ; m -> s(s(z)) ; n -> s(s(z)) }) ------------------------------------------- Step 14, which took 0.020231 s (model generation: 0.019251, model checking: 0.000980): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604, q_gen_5605}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5604) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5605) -> q_gen_5604 () -> q_gen_5605 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5602, q_gen_5603}, Q_f={q_gen_5589, q_gen_5592}, Delta= { () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 (q_gen_5602) -> q_gen_5593 () -> q_gen_5593 (q_gen_5603) -> q_gen_5589 () -> q_gen_5589 (q_gen_5592) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 13 (le([z, z])) -> BOT -> 11 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 13 } Sat witness: Found: ((le([s(nn1), s(nn2)])) -> le([nn1, nn2]), { nn1 -> s(z) ; nn2 -> s(z) }) ------------------------------------------- Step 15, which took 0.019052 s (model generation: 0.018607, model checking: 0.000445): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5596, q_gen_5602, q_gen_5603}, Q_f={q_gen_5589, q_gen_5592}, Delta= { () -> q_gen_5602 () -> q_gen_5593 (q_gen_5593) -> q_gen_5596 (q_gen_5602) -> q_gen_5596 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5592) -> q_gen_5592 (q_gen_5596) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5596) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 (q_gen_5603) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 13 (le([z, z])) -> BOT -> 11 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 13 } Sat witness: Found: (() -> plus([n, z, n]), { n -> s(s(s(z))) }) ------------------------------------------- Step 16, which took 0.020808 s (model generation: 0.019943, model checking: 0.000865): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5596, q_gen_5602, q_gen_5603}, Q_f={q_gen_5589, q_gen_5592}, Delta= { () -> q_gen_5602 () -> q_gen_5593 (q_gen_5593) -> q_gen_5596 (q_gen_5596) -> q_gen_5596 (q_gen_5602) -> q_gen_5596 (q_gen_5592) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5596) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5596) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 (q_gen_5603) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 13 (le([z, z])) -> BOT -> 12 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 16 } Sat witness: Found: ((plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]), { _xba -> s(s(z)) ; mm -> z ; n -> s(z) }) ------------------------------------------- Step 17, which took 0.023355 s (model generation: 0.022763, model checking: 0.000592): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5596, q_gen_5602, q_gen_5603}, Q_f={q_gen_5589, q_gen_5592}, Delta= { (q_gen_5602) -> q_gen_5602 () -> q_gen_5602 (q_gen_5596) -> q_gen_5593 () -> q_gen_5593 (q_gen_5593) -> q_gen_5596 (q_gen_5602) -> q_gen_5596 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5592) -> q_gen_5592 (q_gen_5596) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5596) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 (q_gen_5603) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 16 (le([z, z])) -> BOT -> 13 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 16 } Sat witness: Found: ((le([z, m]) /\ plus([n, m, _cca])) -> le([n, _cca]), { _cca -> s(s(s(z))) ; m -> s(z) ; n -> s(s(s(z))) }) ------------------------------------------- Step 18, which took 0.026587 s (model generation: 0.025453, model checking: 0.001134): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5602, q_gen_5603, q_gen_5608}, Q_f={q_gen_5589, q_gen_5592}, Delta= { (q_gen_5602) -> q_gen_5602 () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5602) -> q_gen_5608 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5592) -> q_gen_5592 (q_gen_5608) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5608) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 (q_gen_5603) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 16 (le([z, z])) -> BOT -> 14 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 19 } Sat witness: Found: ((plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]), { _xba -> s(s(z)) ; mm -> s(z) ; n -> z }) ------------------------------------------- Step 19, which took 0.028197 s (model generation: 0.026624, model checking: 0.001573): Model: |_ { le -> {{{ Q={q_gen_5590, q_gen_5591, q_gen_5604}, Q_f={q_gen_5590}, Delta= { (q_gen_5591) -> q_gen_5591 () -> q_gen_5591 (q_gen_5590) -> q_gen_5590 (q_gen_5591) -> q_gen_5590 (q_gen_5604) -> q_gen_5604 () -> q_gen_5604 } Datatype: Convolution form: right }}} ; plus -> {{{ Q={q_gen_5589, q_gen_5592, q_gen_5593, q_gen_5602, q_gen_5603, q_gen_5608}, Q_f={q_gen_5589, q_gen_5592}, Delta= { (q_gen_5602) -> q_gen_5602 () -> q_gen_5602 (q_gen_5593) -> q_gen_5593 () -> q_gen_5593 (q_gen_5608) -> q_gen_5608 (q_gen_5602) -> q_gen_5608 (q_gen_5592) -> q_gen_5589 (q_gen_5593) -> q_gen_5589 () -> q_gen_5589 (q_gen_5608) -> q_gen_5592 (q_gen_5593) -> q_gen_5592 (q_gen_5608) -> q_gen_5592 (q_gen_5602) -> q_gen_5592 (q_gen_5589) -> q_gen_5603 (q_gen_5603) -> q_gen_5603 } Datatype: Convolution form: right }}} } -- 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, _cca])) -> le([n, _cca]) -> 17 (le([z, z])) -> BOT -> 15 (plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]) -> 22 } Sat witness: Found: ((plus([n, mm, _xba])) -> plus([n, s(mm), s(_xba)]), { _xba -> s(s(s(z))) ; mm -> s(z) ; n -> s(s(z)) }) Total time: 0.338122 Reason for stopping: Proved