; Automatically generated by map2smt (set-logic HORN) (declare-fun new9 (Int Bool Int Int) Bool) (declare-fun new6 (Int Int Int) Bool) (declare-fun new5 (Bool) Bool) (declare-fun new36 (Bool) Bool) (declare-fun new31 (Int Bool) Bool) (declare-fun new27 (Int Bool) Bool) (declare-fun new21 (Int Int Int Bool Int) Bool) (declare-fun new2 (Int Bool) Bool) (declare-fun new14 (Int Int Int Bool Int) Bool) (declare-fun new13 (Int Int Int Bool Int) Bool) (declare-fun new1 (Int Int Bool) Bool) (declare-fun diff_new4 (Int Int Bool Int Int Bool) Bool) (declare-fun diff_new29 (Bool Int Bool) Bool) (declare-fun not_fun_diff_new29 () Bool) (declare-fun constr (Bool) Bool) (declare-fun not_fun_diff_new4 () Bool) (declare-fun weak_diff () Bool) (declare-fun ff () Bool) (assert (forall ( (A Bool) (B Int) (C Bool) (D Bool) (E Int) (F Bool) ) (=> (and (diff_new29 A B C) (diff_new29 D E F) (and (and (= A D) (= B E)) (not (= C F))) ) not_fun_diff_new29 ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) (E Int) (F Bool) (G Int) (H Int) (I Bool) (J Int) (K Int) (L Bool) ) (=> (and (diff_new4 A B C D E F) (diff_new4 G H I J K L) (and (and (= A G) (and (= B H) (and (= C I) (= D J)))) (or (not (= E K)) (not (= F L)))) ) not_fun_diff_new4 ) ) ) (assert (forall ( (A Bool) ) (=> (= A false) (new36 A) ) ) ) (assert (forall ( (A Bool) ) (=> (= A false) (new36 A) ) ) ) (assert (forall ( (A Bool) ) (=> (= A true) (new36 A) ) ) ) (assert (forall ( (A Bool) (B Int) (C Int) ) (=> (and (= A false) (>= (- B C) 1) ) (new36 A) ) ) ) (assert (forall ( (A Bool) (B Int) (C Int) ) (=> (and (= A false) (<= (- B C) (- 1)) ) (new36 A) ) ) ) (assert (forall ( (A Bool) ) (=> (new36 A) (new36 A) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (= B false) (new31 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (= B false) (>= (- A C) 1) ) (new31 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (= B false) (<= (- A C) (- 1)) ) (new31 A B) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (new36 B) (new31 A B) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) ) (=> (and (= C false) (= A false) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (= A false) (>= (- B D) 1) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (= A false) (<= (- B D) (- 1)) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= A false) (new31 D C) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) ) (=> (and (= C false) (= A false) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (= A false) (>= (- B D) 1) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (= A false) (<= (- B D) (- 1)) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) ) (=> (and (= A false) (new5 C) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) ) (=> (and (= C false) (= A true) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (= A true) (>= (- B D) 1) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (= A true) (<= (- B D) (- 1)) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) ) (=> (and (= A true) (new5 C) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) ) (=> (and (= C false) (= A false) (>= (- D E) 1) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) (F Int) ) (=> (and (= C false) (= A false) (>= (- D E) 1) (>= (- B F) 1) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) (F Int) ) (=> (and (= C false) (= A false) (>= (- D E) 1) (<= (- B F) (- 1)) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) ) (=> (and (= A false) (>= (- D E) 1) (new31 D C) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) ) (=> (and (= C false) (= A false) (<= (- D E) (- 1)) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) (F Int) ) (=> (and (= C false) (= A false) (>= (- B D) 1) (<= (- E F) (- 1)) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) (F Int) ) (=> (and (= C false) (= A false) (<= (- D E) (- 1)) (<= (- B F) (- 1)) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) (E Int) ) (=> (and (= A false) (<= (- D E) (- 1)) (new31 D C) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) ) (=> (and (= C false) (new36 A) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (>= (- B D) 1) (new36 A) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (and (= C false) (<= (- B D) (- 1)) (new36 A) ) (diff_new29 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) (C Bool) (D Int) ) (=> (diff_new29 A D C) (diff_new29 A B C) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (= B false) (new27 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (= B false) (>= (- A C) 1) ) (new27 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (= B false) (<= (- A C) (- 1)) ) (new27 A B) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (new5 B) (new27 A B) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) ) (=> (and (= D false) (= F 0) (= E 0) (= B (+ 1 F)) ) (new21 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (>= (- C F) 1) (= G 0) (= E 0) (= B (+ 1 G)) ) (new21 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (<= (- C F) (- 1)) (= G 0) (= E 0) (= B (+ 1 G)) ) (new21 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) ) (=> (and (= F 0) (= E 0) (= B (+ 1 F)) (new5 D) ) (new21 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (= E (+ 1 F)) (= B (+ 1 G)) (new6 A G F) ) (new21 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (= D false) (>= (- C F) 1) (= E (+ 1 G)) (= B (+ 1 H)) (new6 A H G) ) (new21 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (= D false) (<= (- C F) (- 1)) (= E (+ 1 G)) (= B (+ 1 H)) (new6 A H G) ) (new21 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (= E (+ 1 F)) (= B (+ 1 G)) (new21 A G H D F) ) (new21 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) ) (=> (and (= D false) (>= (- A C) 1) (= F 0) (= E 0) (= B (+ 1 F)) ) (new14 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (>= (- C F) 1) (>= (- A C) 1) (= G 0) (= E 0) (= B (+ 1 G)) ) (new14 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (>= (- A C) 1) (<= (- C F) (- 1)) (= G 0) (= E 0) (= B (+ 1 G)) ) (new14 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) ) (=> (and (>= (- A C) 1) (= F 0) (= E 0) (= B (+ 1 F)) (new5 D) ) (new14 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (>= (- A C) 1) (= E (+ 1 F)) (= B (+ 1 G)) (new6 A G F) ) (new14 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (= D false) (>= (- C F) 1) (>= (- A C) 1) (= E (+ 1 G)) (= B (+ 1 H)) (new6 A H G) ) (new14 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (= D false) (>= (- A C) 1) (<= (- C F) (- 1)) (= E (+ 1 G)) (= B (+ 1 H)) (new6 A H G) ) (new14 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (>= (- A C) 1) (= E (+ 1 F)) (= B (+ 1 G)) (new21 A G H D F) ) (new14 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) ) (=> (and (= D false) (<= (- A C) (- 1)) (= F 0) (= E 0) (= B (+ 1 F)) ) (new13 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (>= (- C F) 1) (<= (- A C) (- 1)) (= G 0) (= E 0) (= B (+ 1 G)) ) (new13 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (<= (- C F) (- 1)) (<= (- A C) (- 1)) (= G 0) (= E 0) (= B (+ 1 G)) ) (new13 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) ) (=> (and (<= (- A C) (- 1)) (= F 0) (= E 0) (= B (+ 1 F)) (new5 D) ) (new13 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) ) (=> (and (= D false) (<= (- A C) (- 1)) (= E (+ 1 F)) (= B (+ 1 G)) (new6 A G F) ) (new13 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (= D false) (>= (- C F) 1) (<= (- A C) (- 1)) (= E (+ 1 G)) (= B (+ 1 H)) (new6 A H G) ) (new13 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (= D false) (<= (- C F) (- 1)) (<= (- A C) (- 1)) (= E (+ 1 G)) (= B (+ 1 H)) (new6 A H G) ) (new13 A B C D E) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Bool) (E Int) (F Int) (G Int) (H Int) ) (=> (and (<= (- A C) (- 1)) (= E (+ 1 F)) (= B (+ 1 G)) (new21 A G H D F) ) (new13 A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Int) ) (=> (and (= E 0) (= D 0) (= C (+ 1 E)) (new27 A B) ) (new9 A B C D) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Int) (F Int) (G Bool) (H Int) ) (=> (and (= D (+ 1 E)) (= C (+ 1 F)) (diff_new29 G H B) (new9 A G F E) ) (new9 A B C D) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) ) (=> (and (= D 0) (= C 0) (= B (+ 1 D)) ) (new6 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Int) (D Int) (E Int) ) (=> (and (= C (+ 1 D)) (= B (+ 1 E)) (new6 A E D) ) (new6 A B C) ) ) ) (assert (forall ( (A Bool) ) (=> (= A false) (new5 A) ) ) ) (assert (forall ( (A Bool) ) (=> (= A true) (new5 A) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) ) (=> (and (= E false) (= B false) (= F 0) (= D 0) (= C (+ 1 F)) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) ) (=> (and (= E false) (= B false) (>= (- A F) 1) (>= (- A F) 1) (= G 0) (= D 0) (= C (+ 1 G)) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) ) (=> (and (= E false) (= B false) (<= (- A F) (- 1)) (<= (- A F) (- 1)) (= G 0) (= D 0) (= C (+ 1 G)) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Int) ) (=> (and (= E 0) (= D 0) (= C (+ 1 E)) (new5 B) ) (diff_new4 A A B C D B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) ) (=> (and (= E false) (= B false) (= D (+ 1 F)) (= C (+ 1 G)) (new6 A G F) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) (H Int) (I Int) ) (=> (and (= E false) (= B false) (>= (- F G) 1) (>= (- A G) 1) (= D (+ 1 H)) (= C (+ 1 I)) (new6 A I H) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) (H Int) (I Int) ) (=> (and (= E false) (= B false) (>= (- A F) 1) (<= (- G F) (- 1)) (= D (+ 1 H)) (= C (+ 1 I)) (new6 A I H) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) (H Int) ) (=> (and (= E false) (>= (- A F) 1) (= D (+ 1 G)) (= C (+ 1 H)) (new9 A B H G) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) (H Int) (I Int) ) (=> (and (= E false) (= B false) (>= (- F G) 1) (<= (- A G) (- 1)) (= D (+ 1 H)) (= C (+ 1 I)) (new6 A I H) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) (H Int) (I Int) ) (=> (and (= E false) (= B false) (<= (- F G) (- 1)) (<= (- A G) (- 1)) (= D (+ 1 H)) (= C (+ 1 I)) (new6 A I H) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) (H Int) ) (=> (and (= E false) (<= (- A F) (- 1)) (= D (+ 1 G)) (= C (+ 1 H)) (new9 A B H G) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) (H Int) ) (=> (and (= B false) (>= (- F A) 1) (= D (+ 1 G)) (= C (+ 1 H)) (new13 A H F E G) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) (H Int) ) (=> (and (= B false) (<= (- F A) (- 1)) (= D (+ 1 G)) (= C (+ 1 H)) (new14 A H F E G) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) (D Int) (E Bool) (F Int) (G Int) ) (=> (and (= D (+ 1 F)) (= C (+ 1 G)) (diff_new4 A A B G F E) ) (diff_new4 A A B C D E) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (and (= B true) (= A 0) ) (new2 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (= A (+ 1 C)) (new2 C B) ) (new2 A B) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) ) (=> (and (= B 0) (new2 A C) ) (new1 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) ) (=> (and (= C true) (>= D 0) (= B (+ 1 D)) (= A 0) ) (new1 A B C) ) ) ) (assert (forall ( (A Int) (B Int) (C Bool) (D Int) (E Int) (F Int) (G Int) (H Bool) (I Int) ) (=> (and (>= D 0) (= B (+ 1 D)) (= A (+ 1 E)) (diff_new4 F G H I E C) weak_diff (new1 I D H) ) (new1 A B C) ) ) ) (assert (forall ( (A Bool) (B Int) ) (=> (and (= A false) (new1 B B A) ) ff ) ) ) (assert weak_diff ) (assert (not ff)) (check-sat)