(set-logic ALL) (set-option :strings-exp true) (set-info :status unsat) (declare-fun a () String) (declare-fun b () String) (declare-const c String) (declare-const d String) (declare-const g String) (declare-const e String) (declare-const f String) (assert (or (and (= d (str.++ e g)) (str.in_re e (re.* (str.to_re "HG4"))) (> 0 (str.to_int g)) (= 1 (str.len e)) (= 2 (str.len (str.substr b 0 (str.len d))))) (and (str.in_re (str.replace (str.replace a c "") "T" "") (re.* (re.union (str.to_re "a") (str.to_re "")))) (= 0 (str.to_int (str.replace (str.replace a c "") "T" ""))))) ) (assert (= b (str.++ d f))) (check-sat)