; Automatically generated by map2smt (set-logic HORN) (declare-fun new2 (Int) Bool) (declare-fun new1 (Int Int) Bool) (declare-fun diff_new4 (Int Int Int) Bool) (declare-fun not_fun_diff_new4 () Bool) (declare-fun constr (Bool) Bool) (declare-fun ff () Bool) (assert (forall ( (A Int) (B Int) (C Int) (D Int) (E Int) (F Int) ) (=> (and (diff_new4 A B C) (diff_new4 D E F) (and (and (= A D) (= B E)) (not (= C F))) ) not_fun_diff_new4 ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) (E Int) (F Int) ) (=> (and (= (+ D E) F) (= E 0) (= D 0) (= C (+ 1 F)) (= A 0) ) (diff_new4 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 (- B 1)) (= (+ E F) G) (= (+ E H) I) (= C (+ 1 G)) (= A (+ 1 I)) (diff_new4 H B F) (new2 E) ) (diff_new4 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 B) (= (+ E F) G) (= (+ H F) I) (= C (+ 1 G)) (= A (+ 1 I)) (diff_new4 H B E) (new2 F) ) (diff_new4 A B C) ) ) ) (assert (forall ( (A Int) ) (=> (= A 0) (new2 A) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) ) (=> (and (= (+ B C) D) (= A (+ 1 D)) (new2 B) (new2 C) ) (new2 A) ) ) ) (assert (forall ( (A Int) ) (=> (new2 A) (new1 A A) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) ) (=> (and (diff_new4 C D B) (new1 A C) ) (new1 A B) ) ) ) (assert (forall ( (A Int) (B Int) ) (=> (and (>= A (+ B 1)) (new1 A B) ) ff ) ) ) (assert (not ff)) (check-sat)