; Automatically generated by map2smt (set-logic HORN) (declare-fun new5 (Int Bool) Bool) (declare-fun new2 (Int Bool) Bool) (declare-fun new1 (Int Bool Int Bool) Bool) (declare-fun ff () Bool) (assert (forall ( (A Int) (B Bool) ) (=> (= B false) (new5 A B) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (= B true) (new5 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) (D Int) ) (=> (and (= C true) (>= (- A D) 1) (<= D (- A 1)) (new5 A B) ) (new5 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) (D Int) ) (=> (and (= C false) (>= D A) (<= (- A D) (- 1)) (new5 A B) ) (new5 A B) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (= B false) (new2 A B) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (= B true) (new2 A B) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (and (= B true) (new2 A B) ) (new2 A B) ) ) ) (assert (forall ( (A Int) (B Bool) ) (=> (and (= B true) (new2 A B) ) (new2 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (= B false) (>= (- A C) 1) (new2 A B) (new2 A B) ) (new2 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Int) ) (=> (and (= B false) (<= (- A C) (- 1)) (new2 A B) (new2 A B) ) (new2 A B) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) ) (=> (and (= C false) (= B false) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) ) (=> (and (= C true) (= B true) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) ) (=> (and (= C true) (= B true) (new2 A B) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) ) (=> (and (= C true) (= B true) (new2 A B) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) (D Bool) (E Int) ) (=> (and (= D true) (= B true) (>= (- A E) 1) (<= E (- A 1)) (new2 A B) (new5 A C) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) (D Bool) (E Int) ) (=> (and (= D true) (= B true) (>= (- A E) 1) (<= E (- A 1)) (new1 A B A C) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) (D Bool) (E Int) ) (=> (and (= D true) (= B false) (>= (- A E) 1) (>= (- A E) 1) (<= E (- A 1)) (new2 A B) (new1 A B A C) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) (D Bool) (E Int) ) (=> (and (= D false) (= B true) (>= E A) (<= (- A E) (- 1)) (new1 A B A C) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) (D Bool) (E Int) ) (=> (and (= D false) (= B true) (>= E A) (<= (- A E) (- 1)) (new2 A B) (new5 A C) ) (new1 A B A C) ) ) ) (assert (forall ( (A Int) (B Bool) (C Bool) (D Bool) (E Int) ) (=> (and (= D false) (= B false) (>= E A) (<= (- A E) (- 1)) (<= (- A E) (- 1)) (new1 A B A C) (new2 A B) ) (new1 A B A C) ) ) ) (assert (forall ( (A Bool) (B Bool) (C Int) ) (=> (and (= A true) (= B true) (new1 C B C A) ) ff ) ) ) (assert (not ff)) (check-sat)