; Automatically generated by map2smt (set-logic HORN) (declare-fun new3 (Int) Bool) (declare-fun new1 (Int Int Int) Bool) (declare-fun ff () Bool) (assert (forall ( (A Int) ) (=> (= A 0) (new3 A) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) ) (=> (and (= (+ B C) D) (= A (+ 1 D)) (new3 B) (new3 C) ) (new3 A) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) (E Int) (F Int) ) (=> (and (= (+ D E) F) (= E 0) (= D 0) (= C 0) (= B (+ 1 F)) ) (new1 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) (E Int) (F Int) (G Int) (H Int) (I Int) ) (=> (and (<= D (- A 1)) (= (+ E F) G) (= (+ E H) I) (= C (+ 1 I)) (= B (+ 1 G)) (new1 A F H) (new3 E) ) (new1 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) (E Int) (F Int) (G Int) (H Int) (I Int) ) (=> (and (>= D A) (= (+ E F) G) (= (+ H F) I) (= C (+ 1 I)) (= B (+ 1 G)) (new1 A E H) (new3 F) ) (new1 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) ) (=> (and (= (- A B) 1) (new1 C A B) ) ff ) ) ) (assert (not ff)) (check-sat)