; Automatically generated by map2smt (set-logic HORN) (declare-fun new9 (Int Bool Int Int Bool) Bool) (declare-fun new5 (Int Int Bool Int Bool) Bool) (declare-fun new4 (Int Int Bool) Bool) (declare-fun new30 (Int Int Bool) Bool) (declare-fun new28 (Int Int Int Bool Int Bool) Bool) (declare-fun new23 (Int Bool) Bool) (declare-fun new21 (Int Int Bool Int Bool) Bool) (declare-fun new2 (Int Bool) Bool) (declare-fun new17 (Int Int Int Bool Int Bool) Bool) (declare-fun new16 (Int Int Bool Int Int Bool) Bool) (declare-fun new10 (Int Int Int Bool Int Bool) Bool) (declare-fun new1 (Bool Int Bool) Bool) (declare-fun diff_new8 (Int Int Int Bool Int Bool) Bool) (declare-fun not_fun_diff_new8 () Bool) (declare-fun constr (Bool) Bool) (declare-fun inst_fold () Bool) (declare-fun ff () Bool) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Bool) (G Int) (H Int) (I Int) (J Bool) (K Int) (L Bool) ) (=> (and (diff_new8 A B C D E F) (diff_new8 G H I J K L) (and (and (= A G) (and (= B H) (and (= C I) (and (= D J) (= E K))))) (not (= F L))) ) not_fun_diff_new8 ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) ) (=> (and (>= (- A B) 0) (<= B A) (new2 A C) ) (new30 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) ) (=> (and (>= (- A B) 0) (<= B A) (<= A (- D 1)) inst_fold (new23 A C) ) (new30 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (>= (- A B) 0) (>= B (+ D 1)) (>= A D) ) (new30 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) ) (=> (and (>= (- A B) 0) (>= A D) (<= B D) (new30 A D C) ) (new30 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) ) (=> (and (= D false) (>= (- A C) 0) (>= B (+ C 1)) (new30 A C E) ) (new28 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) ) (=> (and (>= (- A C) 0) (<= B C) (new9 C D A C E) ) (new28 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (= B true) (new23 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (= B false) (>= A (+ C 1)) ) (new23 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (<= A C) (new23 C B) ) (new23 A B) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) ) (=> (and (>= (- B A) 1) (<= A B) (new23 B C) ) (new21 A B C B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) ) (=> (and (>= (- C B) 1) (>= (- A C) 0) (<= C A) (<= B C) (new2 C D) (new2 A E) ) (new17 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) (F Int) ) (=> (and (>= (- C B) 1) (>= (- A C) 0) (<= C A) (<= B C) (<= A (- F 1)) (new16 C F D A F E) ) (new17 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) (F Int) ) (=> (and (= E false) (>= (- C B) 1) (>= (- A C) 0) (>= C (+ F 1)) (>= A F) (<= B C) (new4 C F D) ) (new17 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) (F Int) ) (=> (and (>= (- C B) 1) (>= (- A C) 0) (>= A F) (<= C F) (<= B C) (new28 A C F D F E) ) (new17 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) ) (=> (and (>= (- B D) 1) (>= (- B A) 1) (<= D B) (<= A B) (new23 B C) ) (new16 A B C D B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) ) (=> (and (>= (- B C) 0) (>= (- A C) 0) (<= C B) (<= C A) (new2 A D) (new2 B E) ) (new10 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) (F Int) ) (=> (and (>= (- B C) 0) (>= (- A C) 0) (<= C B) (<= C A) (<= B (- F 1)) (<= A (- F 1)) (new16 A F D B F E) ) (new10 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) (F Int) ) (=> (and (>= (- B C) 0) (>= (- A C) 0) (>= B F) (<= C F) (<= C A) (<= A (- F 1)) (new17 B A F D F E) ) (new10 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) (F Int) ) (=> (and (>= (- B C) 0) (>= (- A C) 0) (>= A F) (<= C B) (<= C F) (<= B (- F 1)) (new17 A B F E F D) ) (new10 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) (F Int) ) (=> (and (= E false) (= D false) (>= (- B C) 0) (>= (- A C) 0) (>= C (+ F 1)) (>= C (+ F 1)) (>= B F) (>= A F) ) (new10 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Bool) (F Int) ) (=> (and (>= (- B C) 0) (>= (- A C) 0) (>= B F) (>= A F) (<= C F) (<= C F) (new10 B A F E F D) ) (new10 A B C D C E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Bool) ) (=> (and (= B true) (<= (- A C) 0) (<= A C) (new2 C D) ) (new9 A B C A D) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Bool) (E Int) ) (=> (and (= D false) (= B false) (>= A (+ E 1)) (>= C E) (>= A (+ E 1)) (<= (- A C) 0) ) (new9 A B C A D) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Bool) (E Int) ) (=> (and (<= (- A C) 0) (<= A C) (<= C (- E 1)) (<= A E) (new21 C E D E B) ) (new9 A B C A D) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Bool) (E Int) ) (=> (and (>= C E) (<= (- A C) 0) (<= A E) (<= A E) (new9 E B C E D) ) (new9 A B C A D) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) (E Bool) ) (=> (and (>= (- D A) 0) (<= B A) (<= B (- A 1)) (new9 A C D A E) ) (diff_new8 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) (E Bool) ) (=> (and (>= (- D A) 0) (>= B A) (new10 B D A C A E) ) (diff_new8 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Bool) ) (=> (and (= D true) (>= (- B A) 0) (<= A B) (new2 B C) ) (new5 A B C B D) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Bool) (E Int) ) (=> (and (= D false) (>= (- B A) 0) (>= B (+ E 1)) (<= A B) (new4 B E C) ) (new5 A B C B D) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Bool) (E Int) ) (=> (and (>= (- B A) 0) (<= B E) (<= A B) (new5 B E C E D) ) (new5 A B C B D) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) ) (=> (and (= C false) (>= A (+ B 1)) (<= (- B A) (- 1)) ) (new4 A B C) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (= B true) (new2 A B) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) ) (=> (and (= C true) (= A true) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= A true) (<= B D) (<= B (- D 1)) (new2 D C) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= A true) (>= B D) (<= D B) (new2 B C) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) ) (=> (and (= A false) (>= D (+ E 1)) (<= B D) (<= B (- D 1)) (new4 D E C) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) ) (=> (and (= C false) (= A false) (>= D (+ E 1)) (>= D (+ E 1)) (>= B E) (>= B D) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) ) (=> (and (<= D E) (<= B D) (<= B (- D 1)) (new5 D E C E A) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) ) (=> (and (>= B D) (<= D B) (<= D E) (<= B (- E 1)) (new5 B E C E A) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) (F Int) (G Int) (H Bool) ) (=> (and (>= B D) (>= B E) (<= D E) (diff_new8 E F G H B C) inst_fold (new1 A G H) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Bool) (C Int) ) (=> (and (= A true) (= B false) (new1 A C B) ) ff ) ) ) (assert inst_fold ) (assert (not ff)) (check-sat)