src/HOL/SMT_Examples/VCC_Max.certs2
changeset 57170 3afada8f820d
parent 56818 689a3eeb6f9e
child 57204 7c36ce8e45f6
--- a/src/HOL/SMT_Examples/VCC_Max.certs2	Tue Jun 03 16:02:42 2014 +0200
+++ b/src/HOL/SMT_Examples/VCC_Max.certs2	Tue Jun 03 16:22:59 2014 +0200
@@ -1,2831 +1,2973 @@
-d89d419269a26cf0f9e2b838b7d86233eeb72c17 2830 0
-unsat
-((set-logic <null>)
-(declare-fun ?v0!14 () Int)
-(declare-fun ?v0!15 () Int)
-(declare-fun ?v0!13 () Int)
-(proof
-(let ((?x12534 (* (- 1) v_b_L_H_max_G_3$)))
-(let ((?x3680 (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$)))
-(let ((?x3922 (b_S_idx$ ?x3680 v_b_L_H_p_G_0$ b_T_T_u1$)))
-(let ((?x3929 (b_S_read_n_u1$ v_b_S_s$ ?x3922)))
-(let (($x24191 (<= (+ ?x3929 ?x12534) 0)))
-(let (($x3940 (= v_b_L_H_max_G_3$ v_b_L_H_max_G_2$)))
-(let ((?x3974 (b_S_idx$ ?x3680 v_b_SL_H_witness_G_1$ b_T_T_u1$)))
-(let ((?x3975 (b_S_read_n_u1$ v_b_S_s$ ?x3974)))
-(let (($x3976 (= ?x3975 v_b_L_H_max_G_3$)))
-(let (($x12550 (<= (+ v_b_P_H_len$ (* (- 1) v_b_SL_H_witness_G_1$)) 0)))
-(let (($x20130 (or $x12550 (not $x3976))))
-(let (($x20131 (not $x20130)))
-(let (($x21049 (forall ((?v0 Int) )(!(let ((?x12534 (* (- 1) v_b_L_H_max_G_3$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12536 (<= (+ ?x3765 ?x12534) 0)))
-(let (($x12521 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12521 $x12536))))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
-))
-(let (($x21057 (or (not $x21049) $x20131)))
-(let (($x21060 (not $x21057)))
-(let ((?x16374 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ ?x3680 ?v0!14 b_T_T_u1$))))
-(let ((?x16620 (* (- 1) ?x16374)))
-(let (($x16622 (>= (+ v_b_L_H_max_G_3$ ?x16620) 0)))
-(let (($x16600 (<= (+ v_b_L_H_p_G_1$ (* (- 1) ?v0!14)) 0)))
-(let (($x16367 (<= ?v0!14 4294967295)))
-(let (($x20084 (not $x16367)))
-(let (($x16366 (>= ?v0!14 0)))
-(let (($x20083 (not $x16366)))
-(let (($x20099 (or $x20083 $x20084 $x16600 $x16622)))
-(let (($x20104 (not $x20099)))
-(let (($x21063 (or $x20104 $x21060)))
-(let (($x21066 (not $x21063)))
-(let (($x12514 (>= (+ v_b_P_H_len$ (* (- 1) v_b_L_H_p_G_1$)) 0)))
-(let (($x12518 (not $x12514)))
-(let (($x21069 (or $x12518 $x21066)))
-(let (($x21072 (not $x21069)))
-(let (($x21075 (or $x12518 $x21072)))
-(let (($x21078 (not $x21075)))
-(let (($x12486 (>= v_b_SL_H_witness_G_1$ 0)))
-(let (($x20173 (not $x12486)))
-(let (($x3960 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_24$ b_H_loc_o_p$ v_b_L_H_p_G_1$ b_T_T_u4$)))
-(let (($x12500 (= (+ v_b_L_H_p_G_0$ (* (- 1) v_b_L_H_p_G_1$)) (- 1))))
-(let (($x20170 (not $x12500)))
-(let (($x13856 (<= v_b_L_H_p_G_0$ 4294967294)))
-(let (($x16354 (not $x13856)))
-(let (($x12494 (>= v_b_L_H_p_G_0$ (- 1))))
-(let (($x16351 (not $x12494)))
-(let (($x21081 (or $x16351 $x16354 $x20170 (not $x3960) (not (>= v_b_L_H_p_G_1$ 2)) $x20173 $x21078)))
-(let (($x21084 (not $x21081)))
-(let (($x21087 (or $x16351 $x16354 $x21084)))
-(let (($x21090 (not $x21087)))
-(let (($x12404 (>= v_b_L_H_p_G_0$ 1)))
-(let (($x20190 (not $x12404)))
-(let (($x3937 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_24_o_47$ b_H_loc_o_witness$ v_b_L_H_p_G_0$ b_T_T_u4$)))
-(let (($x3936 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_23_o_7$ b_H_loc_o_max$ v_b_L_H_max_G_2$ b_T_T_u1$)))
-(let (($x3926 (b_S_thread_n_local$ v_b_S_s$ ?x3922)))
-(let (($x16339 (not $x3926)))
-(let (($x3923 (b_S_is$ ?x3922 b_T_T_u1$)))
-(let (($x16330 (not $x3923)))
-(let (($x21093 (or $x16330 $x16339 (not (= v_b_L_H_max_G_2$ ?x3929)) (not $x3936) (not $x3937) $x20190 (not $x3940) (not (= v_b_SL_H_witness_G_1$ v_b_L_H_p_G_0$)) $x20173 $x21090)))
-(let (($x21096 (not $x21093)))
-(let ((?x24124 (b_S_ref$ ?x3922)))
-(let ((?x23972 (b_S_ptr$ b_T_T_u1$ ?x24124)))
-(let (($x24221 (or (= (b_S_owner$ v_b_S_s$ ?x23972) b_S_me$) (b_S_in_n_wrapped_n_domain$ v_b_S_s$ ?x23972))))
-(let (($x24198 (= (b_S_kind_n_of$ (b_S_typ$ ?x23972)) b_S_kind_n_primitive$)))
-(let ((?x3874 (b_S_typemap$ v_b_S_s$)))
-(let ((?x24200 (b_S_select_o_tm$ ?x3874 ?x23972)))
-(let ((?x24203 (b_S_ts_n_emb$ ?x24200)))
-(let (($x24212 (= (b_S_owner$ v_b_S_s$ ?x24203) b_S_me$)))
-(let (($x24214 (or $x24212 (b_S_in_n_wrapped_n_domain$ v_b_S_s$ ?x24203))))
-(let (($x24210 (= (b_S_kind_n_of$ (b_S_typ$ ?x24203)) b_S_kind_n_primitive$)))
-(let (($x24201 (b_S_ts_n_is_n_volatile$ ?x24200)))
-(let (($x24202 (not $x24201)))
-(let (($x24206 (or $x24202 (not (b_S_closed$ v_b_S_s$ ?x24203)))))
-(let (($x24207 (not $x24206)))
-(let (($x24199 (not $x24198)))
-(let (($x24217 (not (or $x24199 $x24207 $x24210 (not $x24214)))))
-(let (($x24226 (not (or $x24217 (not (or $x24198 (not $x24221)))))))
-(let (($x24194 (b_S_typed$ v_b_S_s$ ?x23972)))
-(let (($x24195 (not $x24194)))
-(let (($x24227 (or $x24195 $x24226)))
-(let (($x24228 (not $x24227)))
-(let (($x24193 (b_S_thread_n_local$ v_b_S_s$ ?x23972)))
-(let (($x24229 (= $x24193 $x24228)))
-(let (($x19790 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x3184 (b_S_in_n_wrapped_n_domain$ ?v0 ?v1)))
-(let ((?x1103 (b_S_owner$ ?v0 ?v1)))
-(let (($x1104 (= ?x1103 b_S_me$)))
-(let (($x1001 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
-(let ((?x1215 (b_S_typemap$ ?v0)))
-(let ((?x3166 (b_S_select_o_tm$ ?x1215 ?v1)))
-(let ((?x3169 (b_S_ts_n_emb$ ?x3166)))
-(let (($x3180 (or (= (b_S_owner$ ?v0 ?x3169) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?v0 ?x3169))))
-(let (($x3172 (or (not (b_S_ts_n_is_n_volatile$ ?x3166)) (not (b_S_closed$ ?v0 ?x3169)))))
-(let (($x1024 (not $x1001)))
-(let (($x19765 (or $x1024 (not $x3172) (= (b_S_kind_n_of$ (b_S_typ$ ?x3169)) b_S_kind_n_primitive$) (not $x3180))))
-(let (($x19774 (or (not $x19765) (not (or $x1001 (not (or $x1104 $x3184)))))))
-(let (($x1106 (b_S_typed$ ?v0 ?v1)))
-(let (($x8534 (not $x1106)))
-(let (($x19782 (not (or $x8534 (not $x19774)))))
-(let (($x3165 (b_S_thread_n_local$ ?v0 ?v1)))
-(= $x3165 $x19782))))))))))))))))) :pattern ( (b_S_thread_n_local$ ?v0 ?v1) )))
-))
-(let (($x12140 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x3184 (b_S_in_n_wrapped_n_domain$ ?v0 ?v1)))
-(let ((?x1103 (b_S_owner$ ?v0 ?v1)))
-(let (($x1104 (= ?x1103 b_S_me$)))
-(let (($x1001 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
-(let (($x1024 (not $x1001)))
-(let (($x3186 (and $x1024 (or $x1104 $x3184))))
-(let ((?x1215 (b_S_typemap$ ?v0)))
-(let ((?x3166 (b_S_select_o_tm$ ?x1215 ?v1)))
-(let ((?x3169 (b_S_ts_n_emb$ ?x3166)))
-(let (($x3180 (or (= (b_S_owner$ ?v0 ?x3169) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?v0 ?x3169))))
-(let (($x3176 (not (= (b_S_kind_n_of$ (b_S_typ$ ?x3169)) b_S_kind_n_primitive$))))
-(let (($x3172 (or (not (b_S_ts_n_is_n_volatile$ ?x3166)) (not (b_S_closed$ ?v0 ?x3169)))))
-(let (($x8324 (and $x1001 $x3172 $x3176 $x3180)))
-(let (($x8329 (or $x8324 $x3186)))
-(let (($x1106 (b_S_typed$ ?v0 ?v1)))
-(let (($x8332 (and $x1106 $x8329)))
-(let (($x3165 (b_S_thread_n_local$ ?v0 ?v1)))
-(= $x3165 $x8332)))))))))))))))))) :pattern ( (b_S_thread_n_local$ ?v0 ?v1) )))
-))
-(let (($x3184 (b_S_in_n_wrapped_n_domain$ ?1 ?0)))
-(let ((?x1103 (b_S_owner$ ?1 ?0)))
-(let (($x1104 (= ?x1103 b_S_me$)))
-(let (($x1001 (= (b_S_kind_n_of$ (b_S_typ$ ?0)) b_S_kind_n_primitive$)))
-(let ((?x1215 (b_S_typemap$ ?1)))
-(let ((?x3166 (b_S_select_o_tm$ ?x1215 ?0)))
-(let ((?x3169 (b_S_ts_n_emb$ ?x3166)))
-(let (($x3180 (or (= (b_S_owner$ ?1 ?x3169) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?1 ?x3169))))
-(let (($x3172 (or (not (b_S_ts_n_is_n_volatile$ ?x3166)) (not (b_S_closed$ ?1 ?x3169)))))
-(let (($x1024 (not $x1001)))
-(let (($x19765 (or $x1024 (not $x3172) (= (b_S_kind_n_of$ (b_S_typ$ ?x3169)) b_S_kind_n_primitive$) (not $x3180))))
-(let (($x19774 (or (not $x19765) (not (or $x1001 (not (or $x1104 $x3184)))))))
-(let (($x1106 (b_S_typed$ ?1 ?0)))
-(let (($x8534 (not $x1106)))
-(let (($x19782 (not (or $x8534 (not $x19774)))))
-(let (($x3165 (b_S_thread_n_local$ ?1 ?0)))
-(let (($x3186 (and $x1024 (or $x1104 $x3184))))
-(let (($x3176 (not (= (b_S_kind_n_of$ (b_S_typ$ ?x3169)) b_S_kind_n_primitive$))))
-(let (($x8324 (and $x1001 $x3172 $x3176 $x3180)))
-(let (($x8329 (or $x8324 $x3186)))
-(let (($x8332 (and $x1106 $x8329)))
-(let (($x12136 (= $x3165 $x8332)))
-(let ((@x19776 (monotonicity (rewrite (= $x8324 (not $x19765))) (rewrite (= $x3186 (not (or $x1001 (not (or $x1104 $x3184)))))) (= $x8329 $x19774))))
-(let ((@x19786 (trans (monotonicity @x19776 (= $x8332 (and $x1106 $x19774))) (rewrite (= (and $x1106 $x19774) $x19782)) (= $x8332 $x19782))))
-(let ((@x19792 (quant-intro (monotonicity @x19786 (= $x12136 (= $x3165 $x19782))) (= $x12140 $x19790))))
-(let (($x8338 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x3184 (b_S_in_n_wrapped_n_domain$ ?v0 ?v1)))
-(let ((?x1103 (b_S_owner$ ?v0 ?v1)))
-(let (($x1104 (= ?x1103 b_S_me$)))
-(let (($x1001 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
-(let (($x1024 (not $x1001)))
-(let (($x3186 (and $x1024 (or $x1104 $x3184))))
-(let ((?x1215 (b_S_typemap$ ?v0)))
-(let ((?x3166 (b_S_select_o_tm$ ?x1215 ?v1)))
-(let ((?x3169 (b_S_ts_n_emb$ ?x3166)))
-(let (($x3180 (or (= (b_S_owner$ ?v0 ?x3169) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?v0 ?x3169))))
-(let (($x3176 (not (= (b_S_kind_n_of$ (b_S_typ$ ?x3169)) b_S_kind_n_primitive$))))
-(let (($x3172 (or (not (b_S_ts_n_is_n_volatile$ ?x3166)) (not (b_S_closed$ ?v0 ?x3169)))))
-(let (($x8324 (and $x1001 $x3172 $x3176 $x3180)))
-(let (($x8329 (or $x8324 $x3186)))
-(let (($x1106 (b_S_typed$ ?v0 ?v1)))
-(let (($x8332 (and $x1106 $x8329)))
-(let (($x3165 (b_S_thread_n_local$ ?v0 ?v1)))
-(= $x3165 $x8332)))))))))))))))))) :pattern ( (b_S_thread_n_local$ ?v0 ?v1) )))
-))
-(let (($x3191 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x3184 (b_S_in_n_wrapped_n_domain$ ?v0 ?v1)))
-(let ((?x1103 (b_S_owner$ ?v0 ?v1)))
-(let (($x1104 (= ?x1103 b_S_me$)))
-(let (($x1001 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
-(let (($x1024 (not $x1001)))
-(let (($x3186 (and $x1024 (or $x1104 $x3184))))
-(let ((?x1215 (b_S_typemap$ ?v0)))
-(let ((?x3166 (b_S_select_o_tm$ ?x1215 ?v1)))
-(let ((?x3169 (b_S_ts_n_emb$ ?x3166)))
-(let (($x3180 (or (= (b_S_owner$ ?v0 ?x3169) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?v0 ?x3169))))
-(let (($x3176 (not (= (b_S_kind_n_of$ (b_S_typ$ ?x3169)) b_S_kind_n_primitive$))))
-(let (($x3172 (or (not (b_S_ts_n_is_n_volatile$ ?x3166)) (not (b_S_closed$ ?v0 ?x3169)))))
-(let (($x3183 (and $x1001 (and $x3172 (and $x3176 $x3180)))))
-(let (($x1106 (b_S_typed$ ?v0 ?v1)))
-(let (($x3165 (b_S_thread_n_local$ ?v0 ?v1)))
-(= $x3165 (and $x1106 (or $x3183 $x3186)))))))))))))))))) :pattern ( (b_S_thread_n_local$ ?v0 ?v1) )))
-))
-(let (($x8335 (= $x3165 $x8332)))
-(let (($x8336 (= (= $x3165 (and $x1106 (or (and $x1001 (and $x3172 (and $x3176 $x3180))) $x3186))) $x8335)))
-(let (($x8333 (= (and $x1106 (or (and $x1001 (and $x3172 (and $x3176 $x3180))) $x3186)) $x8332)))
-(let (($x3183 (and $x1001 (and $x3172 (and $x3176 $x3180)))))
-(let ((@x8323 (monotonicity (rewrite (= (and $x3172 (and $x3176 $x3180)) (and $x3172 $x3176 $x3180))) (= $x3183 (and $x1001 (and $x3172 $x3176 $x3180))))))
-(let ((@x8328 (trans @x8323 (rewrite (= (and $x1001 (and $x3172 $x3176 $x3180)) $x8324)) (= $x3183 $x8324))))
-(let ((@x8337 (monotonicity (monotonicity (monotonicity @x8328 (= (or $x3183 $x3186) $x8329)) $x8333) $x8336)))
-(let ((@x12145 (mp (mp (asserted $x3191) (quant-intro @x8337 (= $x3191 $x8338)) $x8338) (quant-intro (rewrite (= $x8335 $x12136)) (= $x8338 $x12140)) $x12140)))
-(let ((@x19793 (mp (mp~ @x12145 (nnf-pos (refl (~ $x12136 $x12136)) (~ $x12140 $x12140)) $x12140) @x19792 $x19790)))
-(let (($x23973 (= ?x3922 ?x23972)))
-(let ((?x23986 (b_S_typ$ ?x3922)))
-(let (($x23984 (= ?x23986 b_T_T_u1$)))
-(let ((?x3652 (b_S_sizeof$ b_T_T_u1$)))
-(let ((?x24037 (* ?x3652 v_b_L_H_p_G_0$)))
-(let ((?x3739 (b_S_idx$ ?x3680 0 b_T_T_u1$)))
-(let ((?x23186 (b_S_ref$ ?x3739)))
-(let ((?x23206 (b_S_ptr$ b_T_T_u1$ ?x23186)))
-(let ((?x23612 (b_S_ref$ ?x23206)))
-(let ((?x24040 (+ ?x23612 ?x24037)))
-(let ((?x24043 (b_S_ptr$ b_T_T_u1$ ?x24040)))
-(let (($x20974 (forall ((?v0 B_S_ctype$) (?v1 Int) )(!(= (b_S_typ$ (b_S_ptr$ ?v0 ?v1)) ?v0) :pattern ( (b_S_ptr$ ?v0 ?v1) )))
-))
-(let (($x3462 (forall ((?v0 B_S_ctype$) (?v1 Int) )(= (b_S_typ$ (b_S_ptr$ ?v0 ?v1)) ?v0))
-))
-(let (($x3461 (= (b_S_typ$ (b_S_ptr$ ?1 ?0)) ?1)))
-(let ((@x16101 (mp~ (asserted $x3462) (nnf-pos (refl (~ $x3461 $x3461)) (~ $x3462 $x3462)) $x3462)))
-(let ((@x20979 (mp @x16101 (quant-intro (refl (= $x3461 $x3461)) (= $x3462 $x20974)) $x20974)))
-(let ((@x24995 (unit-resolution ((_ quant-inst b_T_T_u1$ (+ ?x23612 ?x24037)) (or (not $x20974) (= (b_S_typ$ ?x24043) b_T_T_u1$))) @x20979 (= (b_S_typ$ ?x24043) b_T_T_u1$))))
-(let ((?x23996 (b_S_idx$ ?x23206 v_b_L_H_p_G_0$ b_T_T_u1$)))
-(let (($x24957 (= ?x23996 ?x24043)))
-(let (($x24973 (or (not (b_S_extent_n_hint$ ?x23996 ?x23206)) (not $x24957))))
-(let (($x24976 (not $x24973)))
-(let (($x18898 (forall ((?v0 B_S_ptr$) (?v1 Int) (?v2 B_S_ctype$) )(!(let ((?x2466 (* ?v1 (b_S_sizeof$ ?v2))))
-(let ((?x2467 (+ (b_S_ref$ ?v0) ?x2466)))
-(let ((?x2468 (b_S_ptr$ ?v2 ?x2467)))
-(let ((?x2462 (b_S_idx$ ?v0 ?v1 ?v2)))
-(let (($x2469 (= ?x2462 ?x2468)))
-(not (or (not (b_S_extent_n_hint$ ?x2462 ?v0)) (not $x2469)))))))) :pattern ( (b_S_idx$ ?v0 ?v1 ?v2) )))
-))
-(let (($x2472 (forall ((?v0 B_S_ptr$) (?v1 Int) (?v2 B_S_ctype$) )(!(let ((?x2466 (* ?v1 (b_S_sizeof$ ?v2))))
-(let ((?x2467 (+ (b_S_ref$ ?v0) ?x2466)))
-(let ((?x2468 (b_S_ptr$ ?v2 ?x2467)))
-(let ((?x2462 (b_S_idx$ ?v0 ?v1 ?v2)))
-(let (($x2469 (= ?x2462 ?x2468)))
-(let (($x2463 (b_S_extent_n_hint$ ?x2462 ?v0)))
-(and $x2463 $x2469))))))) :pattern ( (b_S_idx$ ?v0 ?v1 ?v2) )))
-))
-(let ((?x2466 (* ?1 (b_S_sizeof$ ?0))))
-(let ((?x2467 (+ (b_S_ref$ ?2) ?x2466)))
-(let ((?x2468 (b_S_ptr$ ?0 ?x2467)))
-(let ((?x2462 (b_S_idx$ ?2 ?1 ?0)))
-(let (($x2469 (= ?x2462 ?x2468)))
-(let (($x2463 (b_S_extent_n_hint$ ?x2462 ?2)))
-(let (($x2470 (and $x2463 $x2469)))
-(let ((@x18900 (quant-intro (rewrite (= $x2470 (not (or (not $x2463) (not $x2469))))) (= $x2472 $x18898))))
-(let (($x7455 (forall ((?v0 B_S_ptr$) (?v1 Int) (?v2 B_S_ctype$) )(!(let ((?x7440 (* (b_S_sizeof$ ?v2) ?v1)))
-(let ((?x7443 (+ (b_S_ref$ ?v0) ?x7440)))
-(let ((?x7446 (b_S_ptr$ ?v2 ?x7443)))
-(let ((?x2462 (b_S_idx$ ?v0 ?v1 ?v2)))
-(let (($x7449 (= ?x2462 ?x7446)))
-(let (($x2463 (b_S_extent_n_hint$ ?x2462 ?v0)))
-(and $x2463 $x7449))))))) :pattern ( (b_S_idx$ ?v0 ?v1 ?v2) )))
-))
-(let ((?x7440 (* (b_S_sizeof$ ?0) ?1)))
-(let ((?x7443 (+ (b_S_ref$ ?2) ?x7440)))
-(let ((?x7446 (b_S_ptr$ ?0 ?x7443)))
-(let (($x7449 (= ?x2462 ?x7446)))
-(let (($x7452 (and $x2463 $x7449)))
-(let ((@x11827 (monotonicity (monotonicity (rewrite (= ?x7440 ?x2466)) (= ?x7443 ?x2467)) (= ?x7446 ?x2468))))
-(let ((@x11833 (quant-intro (monotonicity (monotonicity @x11827 (= $x7449 $x2469)) (= $x7452 $x2470)) (= $x7455 $x2472))))
-(let ((@x7448 (monotonicity (monotonicity (rewrite (= ?x2466 ?x7440)) (= ?x2467 ?x7443)) (= ?x2468 ?x7446))))
-(let ((@x7457 (quant-intro (monotonicity (monotonicity @x7448 (= $x2469 $x7449)) (= $x2470 $x7452)) (= $x2472 $x7455))))
-(let ((@x15301 (mp~ (mp (mp (asserted $x2472) @x7457 $x7455) @x11833 $x2472) (nnf-pos (refl (~ $x2470 $x2470)) (~ $x2472 $x2472)) $x2472)))
-(let ((@x18901 (mp @x15301 @x18900 $x18898)))
-(let (($x23217 (not $x18898)))
-(let (($x24981 (or $x23217 $x24976)))
-(let (($x24034 (not (= ?x23996 (b_S_ptr$ b_T_T_u1$ (+ ?x23612 (* v_b_L_H_p_G_0$ ?x3652)))))))
-(let (($x24986 (= (or $x23217 (not (or (not (b_S_extent_n_hint$ ?x23996 ?x23206)) $x24034))) $x24981)))
-(let (($x24958 (= (= ?x23996 (b_S_ptr$ b_T_T_u1$ (+ ?x23612 (* v_b_L_H_p_G_0$ ?x3652)))) $x24957)))
-(let ((@x24955 (monotonicity (rewrite (= (* v_b_L_H_p_G_0$ ?x3652) ?x24037)) (= (+ ?x23612 (* v_b_L_H_p_G_0$ ?x3652)) ?x24040))))
-(let ((@x24956 (monotonicity @x24955 (= (b_S_ptr$ b_T_T_u1$ (+ ?x23612 (* v_b_L_H_p_G_0$ ?x3652))) ?x24043))))
-(let ((@x24975 (monotonicity (monotonicity (monotonicity @x24956 $x24958) (= $x24034 (not $x24957))) (= (or (not (b_S_extent_n_hint$ ?x23996 ?x23206)) $x24034) $x24973))))
-(let ((@x24983 (monotonicity @x24975 (= (not (or (not (b_S_extent_n_hint$ ?x23996 ?x23206)) $x24034)) $x24976))))
-(let ((@x24985 ((_ quant-inst (b_S_ptr$ b_T_T_u1$ ?x23186) v_b_L_H_p_G_0$ b_T_T_u1$) (or $x23217 (not (or (not (b_S_extent_n_hint$ ?x23996 ?x23206)) $x24034))))))
-(let ((@x23295 (mp @x24985 (trans (monotonicity @x24983 $x24986) (rewrite (= $x24981 $x24981)) $x24986) $x24981)))
-(let ((@x25587 (unit-resolution (def-axiom (or $x24973 $x24957)) (unit-resolution @x23295 @x18901 $x24976) $x24957)))
-(let (($x23207 (= ?x3739 ?x23206)))
-(let (($x3740 (b_S_is$ ?x3739 b_T_T_u1$)))
-(let ((?x23215 (b_S_typ$ ?x3739)))
-(let (($x23216 (= ?x23215 b_T_T_u1$)))
-(let ((@x23266 (unit-resolution ((_ quant-inst b_T_T_u1$ v_b_P_H_arr$) (or (not $x20974) (= (b_S_typ$ ?x3680) b_T_T_u1$))) @x20979 (= (b_S_typ$ ?x3680) b_T_T_u1$))))
-(let (($x20968 (forall ((?v0 B_S_ctype$) (?v1 Int) )(!(= (b_S_ref$ (b_S_ptr$ ?v0 ?v1)) ?v1) :pattern ( (b_S_ptr$ ?v0 ?v1) )))
-))
-(let (($x3459 (forall ((?v0 B_S_ctype$) (?v1 Int) )(= (b_S_ref$ (b_S_ptr$ ?v0 ?v1)) ?v1))
-))
-(let (($x3458 (= (b_S_ref$ (b_S_ptr$ ?1 ?0)) ?0)))
-(let ((@x16096 (mp~ (asserted $x3459) (nnf-pos (refl (~ $x3458 $x3458)) (~ $x3459 $x3459)) $x3459)))
-(let ((@x20973 (mp @x16096 (quant-intro (refl (= $x3458 $x3458)) (= $x3459 $x20968)) $x20968)))
-(let ((@x23283 (unit-resolution ((_ quant-inst b_T_T_u1$ v_b_P_H_arr$) (or (not $x20968) (= (b_S_ref$ ?x3680) v_b_P_H_arr$))) @x20973 (= (b_S_ref$ ?x3680) v_b_P_H_arr$))))
-(let ((?x3681 (b_S_ref$ ?x3680)))
-(let ((?x23203 (b_S_ptr$ b_T_T_u1$ ?x3681)))
-(let (($x23188 (= ?x3739 ?x23203)))
-(let (($x23208 (or (not (b_S_extent_n_hint$ ?x3739 ?x3680)) (not $x23188))))
-(let (($x23213 (not $x23208)))
-(let (($x23220 (or $x23217 $x23213)))
-(let (($x23243 (or (not (b_S_extent_n_hint$ ?x3739 ?x3680)) (not (= ?x3739 (b_S_ptr$ b_T_T_u1$ (+ ?x3681 (* 0 ?x3652))))))))
-(let (($x23209 (= (not (= ?x3739 (b_S_ptr$ b_T_T_u1$ (+ ?x3681 (* 0 ?x3652))))) (not $x23188))))
-(let ((@x23198 (monotonicity (rewrite (= (* 0 ?x3652) 0)) (= (+ ?x3681 (* 0 ?x3652)) (+ ?x3681 0)))))
-(let ((@x23202 (trans @x23198 (rewrite (= (+ ?x3681 0) ?x3681)) (= (+ ?x3681 (* 0 ?x3652)) ?x3681))))
-(let ((@x23190 (monotonicity @x23202 (= (b_S_ptr$ b_T_T_u1$ (+ ?x3681 (* 0 ?x3652))) ?x23203))))
-(let ((@x23192 (monotonicity @x23190 (= (= ?x3739 (b_S_ptr$ b_T_T_u1$ (+ ?x3681 (* 0 ?x3652)))) $x23188))))
-(let ((@x23219 (monotonicity (monotonicity (monotonicity @x23192 $x23209) (= $x23243 $x23208)) (= (not $x23243) $x23213))))
-(let ((@x23232 (trans (monotonicity @x23219 (= (or $x23217 (not $x23243)) $x23220)) (rewrite (= $x23220 $x23220)) (= (or $x23217 (not $x23243)) $x23220))))
-(let ((@x23284 (unit-resolution (mp ((_ quant-inst (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) 0 b_T_T_u1$) (or $x23217 (not $x23243))) @x23232 $x23220) @x18901 $x23213)))
-(let ((@x23269 (unit-resolution (def-axiom (or $x23208 $x23188)) @x23284 $x23188)))
-(let ((@x23248 (monotonicity (trans @x23269 (monotonicity @x23283 (= ?x23203 ?x3680)) (= ?x3739 ?x3680)) (= ?x23215 (b_S_typ$ ?x3680)))))
-(let (($x23163 (not $x23216)))
-(let (($x23223 (= $x3740 $x23216)))
-(let (($x20961 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(!(let ((?x2296 (b_S_typ$ ?v0)))
-(let (($x2741 (= ?x2296 ?v1)))
-(let (($x3427 (b_S_is$ ?v0 ?v1)))
-(= $x3427 $x2741)))) :pattern ( (b_S_is$ ?v0 ?v1) )))
-))
-(let (($x12230 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(let ((?x2296 (b_S_typ$ ?v0)))
-(let (($x2741 (= ?x2296 ?v1)))
-(let (($x3427 (b_S_is$ ?v0 ?v1)))
-(= $x3427 $x2741)))))
-))
-(let ((?x2296 (b_S_typ$ ?1)))
-(let (($x2741 (= ?x2296 ?0)))
-(let (($x3427 (b_S_is$ ?1 ?0)))
-(let (($x12201 (= $x3427 $x2741)))
-(let (($x3434 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(let ((?x2296 (b_S_typ$ ?v0)))
-(let (($x2741 (= ?x2296 ?v1)))
-(let (($x3427 (b_S_is$ ?v0 ?v1)))
-(= $x3427 $x2741)))))
-))
-(let ((@x12235 (mp (asserted $x3434) (quant-intro (rewrite (= (= $x3427 $x2741) $x12201)) (= $x3434 $x12230)) $x12230)))
-(let ((@x20966 (mp (mp~ @x12235 (nnf-pos (refl (~ $x12201 $x12201)) (~ $x12230 $x12230)) $x12230) (quant-intro (refl (= $x12201 $x12201)) (= $x12230 $x20961)) $x20961)))
-(let ((@x23281 (unit-resolution (def-axiom (or (not $x23223) $x3740 $x23163)) (hypothesis (not $x3740)) (or (not $x23223) $x23163))))
-(let ((@x23282 (unit-resolution @x23281 (unit-resolution ((_ quant-inst (b_S_idx$ ?x3680 0 b_T_T_u1$) b_T_T_u1$) (or (not $x20961) $x23223)) @x20966 $x23223) $x23163)))
-(let ((@x23251 (lemma (unit-resolution @x23282 (trans @x23248 @x23266 $x23216) false) $x3740)))
-(let (($x8559 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(!(or (not (b_S_is$ ?v0 ?v1)) (= ?v0 (b_S_ptr$ ?v1 (b_S_ref$ ?v0)))) :pattern ( (b_S_is$ ?v0 ?v1) )))
-))
-(let (($x8556 (or (not $x3427) (= ?1 (b_S_ptr$ ?0 (b_S_ref$ ?1))))))
-(let (($x3432 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(!(let (($x3427 (b_S_is$ ?v0 ?v1)))
-(=> $x3427 (= ?v0 (b_S_ptr$ ?v1 (b_S_ref$ ?v0))))) :pattern ( (b_S_is$ ?v0 ?v1) )))
-))
-(let ((@x8558 (rewrite (= (=> $x3427 (= ?1 (b_S_ptr$ ?0 (b_S_ref$ ?1)))) $x8556))))
-(let ((@x16076 (mp~ (mp (asserted $x3432) (quant-intro @x8558 (= $x3432 $x8559)) $x8559) (nnf-pos (refl (~ $x8556 $x8556)) (~ $x8559 $x8559)) $x8559)))
-(let (($x23403 (= (or (not $x8559) (or (not $x3740) $x23207)) (or (not $x8559) (not $x3740) $x23207))))
-(let ((@x23405 (mp ((_ quant-inst (b_S_idx$ ?x3680 0 b_T_T_u1$) b_T_T_u1$) (or (not $x8559) (or (not $x3740) $x23207))) (rewrite $x23403) (or (not $x8559) (not $x3740) $x23207))))
-(let ((@x24358 (monotonicity (symm @x23283 (= v_b_P_H_arr$ ?x3681)) (= ?x3680 ?x23203))))
-(let ((@x24998 (trans (trans @x24358 (symm @x23269 (= ?x23203 ?x3739)) (= ?x3680 ?x3739)) (unit-resolution @x23405 @x16076 @x23251 $x23207) (= ?x3680 ?x23206))))
-(let ((@x25027 (monotonicity (trans (monotonicity @x24998 (= ?x3922 ?x23996)) @x25587 (= ?x3922 ?x24043)) (= ?x23986 (b_S_typ$ ?x24043)))))
-(let (($x25000 (not $x23984)))
-(let (($x23994 (= $x3923 $x23984)))
-(let ((@x24895 (unit-resolution (def-axiom (or (not $x23994) $x3923 $x25000)) (hypothesis $x16330) (or (not $x23994) $x25000))))
-(let ((@x24903 (unit-resolution @x24895 (unit-resolution ((_ quant-inst (b_S_idx$ ?x3680 v_b_L_H_p_G_0$ b_T_T_u1$) b_T_T_u1$) (or (not $x20961) $x23994)) @x20966 $x23994) $x25000)))
-(let ((@x25032 (lemma (unit-resolution @x24903 (trans @x25027 @x24995 $x23984) false) $x3923)))
-(let ((@x24892 (rewrite (= (or (not $x8559) (or $x16330 $x23973)) (or (not $x8559) $x16330 $x23973)))))
-(let ((@x24894 (mp ((_ quant-inst (b_S_idx$ ?x3680 v_b_L_H_p_G_0$ b_T_T_u1$) b_T_T_u1$) (or (not $x8559) (or $x16330 $x23973))) @x24892 (or (not $x8559) $x16330 $x23973))))
-(let ((@x24935 (unit-resolution @x24894 @x16076 (hypothesis $x3923) (hypothesis (not $x23973)) false)))
-(let ((@x25156 (unit-resolution (lemma @x24935 (or $x16330 $x23973)) @x25032 $x23973)))
-(let ((@x25212 (symm (monotonicity (symm @x25156 (= ?x23972 ?x3922)) (= $x24193 $x3926)) (= $x3926 $x24193))))
-(let ((@x25225 (mp (hypothesis $x16339) (monotonicity @x25212 (= $x16339 (not $x24193))) (not $x24193))))
-(let ((@x25226 (unit-resolution (def-axiom (or (not $x24229) $x24193 $x24227)) @x25225 (unit-resolution ((_ quant-inst v_b_S_s$ (b_S_ptr$ b_T_T_u1$ ?x24124)) (or (not $x19790) $x24229)) @x19793 $x24229) $x24227)))
-(let ((@x25350 (monotonicity (symm (hypothesis $x23973) (= ?x23972 ?x3922)) (= $x24194 (b_S_typed$ v_b_S_s$ ?x3922)))))
-(let (($x3924 (b_S_typed$ v_b_S_s$ ?x3922)))
-(let ((?x23936 (b_S_select_o_tm$ ?x3874 ?x3922)))
-(let (($x24081 (b_S_ts_n_is_n_volatile$ ?x23936)))
-(let (($x16333 (not $x3924)))
-(let (($x24082 (or $x16333 $x24081)))
-(let (($x24083 (not $x24082)))
-(let (($x12397 (>= v_b_L_H_p_G_0$ 0)))
-(let (($x21173 (forall ((?v0 Int) )(!(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3840 (= ?x3765 v_b_S_result_G_0$)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12631 (not $x3840))))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
-))
-(let (($x21178 (not $x21173)))
-(let (($x21165 (forall ((?v0 Int) )(!(let ((?x12644 (* (- 1) v_b_S_result_G_0$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12646 (<= (+ ?x3765 ?x12644) 0)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12631 $x12646))))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
-))
-(let (($x21181 (or (not $x21165) $x21178)))
-(let (($x21184 (not $x21181)))
-(let ((?x16481 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ ?x3680 ?v0!15 b_T_T_u1$))))
-(let (($x16760 (>= (+ v_b_S_result_G_0$ (* (- 1) ?x16481)) 0)))
-(let (($x16738 (<= (+ v_b_P_H_len$ (* (- 1) ?v0!15)) 0)))
-(let (($x16474 (<= ?v0!15 4294967295)))
-(let (($x20278 (not $x16474)))
-(let (($x16473 (>= ?v0!15 0)))
-(let (($x20277 (not $x16473)))
-(let (($x20293 (or $x20277 $x20278 $x16738 $x16760)))
-(let (($x20298 (not $x20293)))
-(let (($x21187 (or $x20298 $x21184)))
-(let (($x21190 (not $x21187)))
-(let (($x3824 (= v_b_S_result_G_0$ v_b_L_H_max_G_1$)))
-(let (($x20358 (not $x3824)))
-(let (($x12389 (>= v_b_SL_H_witness_G_0$ 0)))
-(let (($x20219 (not $x12389)))
-(let (($x12453 (<= (+ v_b_P_H_len$ (* (- 1) v_b_L_H_p_G_0$)) 0)))
-(let (($x12456 (not $x12453)))
-(let (($x21193 (or $x12456 $x20190 $x20219 (not (= v_b_L_H_max_G_4$ v_b_L_H_max_G_1$)) (not (= v_b_L_H_p_G_2$ v_b_L_H_p_G_0$)) (not (= v_b_SL_H_witness_G_2$ v_b_SL_H_witness_G_0$)) $x20358 $x21190)))
-(let (($x21196 (not $x21193)))
-(let (($x3993 (= v_b_L_H_max_G_3$ v_b_L_H_max_G_1$)))
-(let (($x20230 (not $x3993)))
-(let (($x12471 (>= (+ v_b_L_H_max_G_1$ (* (- 1) ?x3929)) 0)))
-(let (($x12476 (not $x12471)))
-(let (($x21123 (or $x20190 $x20219 $x12476 $x20230 (not (= v_b_SL_H_witness_G_1$ v_b_SL_H_witness_G_0$)) $x20173 $x21090)))
-(let (($x21126 (not $x21123)))
-(let (($x21099 (or $x16330 $x16339 $x21096)))
-(let (($x21102 (not $x21099)))
-(let (($x21105 (or $x16330 $x16333 $x21102)))
-(let (($x21108 (not $x21105)))
-(let (($x21111 (or $x16330 $x16333 $x21108)))
-(let (($x21114 (not $x21111)))
-(let (($x21117 (or $x20190 $x20219 $x12471 $x21114)))
-(let (($x21120 (not $x21117)))
-(let (($x21129 (or $x21120 $x21126)))
-(let (($x21132 (not $x21129)))
-(let (($x21135 (or $x16330 $x16339 $x20190 $x20219 $x21132)))
-(let (($x21138 (not $x21135)))
-(let (($x21141 (or $x16330 $x16339 $x21138)))
-(let (($x21144 (not $x21141)))
-(let (($x21147 (or $x16330 $x16333 $x21144)))
-(let (($x21150 (not $x21147)))
-(let (($x21153 (or $x16330 $x16333 $x21150)))
-(let (($x21156 (not $x21153)))
-(let (($x21159 (or $x20190 $x20219 $x12453 $x21156)))
-(let (($x21162 (not $x21159)))
-(let (($x21199 (or $x21162 $x21196)))
-(let (($x21202 (not $x21199)))
-(let ((?x991 (b_S_ptr_n_to$ b_T_T_u1$)))
-(let (($x3898 (b_S_local_n_value_n_is_n_ptr$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_arr$ ?x3680 ?x991)))
-(let (($x3897 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_arr$ (b_S_ptr_n_to_n_int$ ?x3680) ?x991)))
-(let (($x3896 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_len$ v_b_P_H_len$ b_T_T_u4$)))
-(let (($x3895 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_max$ v_b_L_H_max_G_1$ b_T_T_u1$)))
-(let (($x3894 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_witness$ v_b_SL_H_witness_G_0$ b_T_T_u4$)))
-(let (($x3893 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_p$ v_b_L_H_p_G_0$ b_T_T_u4$)))
-(let ((?x3793 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ ?x3680 v_b_SL_H_witness_G_0$ b_T_T_u1$))))
-(let (($x3794 (= ?x3793 v_b_L_H_max_G_1$)))
-(let (($x20379 (not $x3794)))
-(let (($x12435 (<= (+ v_b_P_H_len$ (* (- 1) v_b_SL_H_witness_G_0$)) 0)))
-(let (($x21041 (forall ((?v0 Int) )(!(let ((?x12384 (* (- 1) v_b_L_H_max_G_1$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12425 (<= (+ ?x3765 ?x12384) 0)))
-(let (($x12411 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12411 $x12425))))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
-))
-(let (($x21046 (not $x21041)))
-(let (($x20375 (not $x12397)))
-(let (($x12834 (<= v_b_SL_H_witness_G_0$ 4294967295)))
-(let (($x20374 (not $x12834)))
-(let ((?x3746 (b_S_read_n_u1$ v_b_S_s$ ?x3739)))
-(let (($x3769 (= ?x3746 v_b_L_H_max_G_0$)))
-(let (($x16288 (not $x3769)))
-(let (($x8666 (<= v_b_P_H_len$ 0)))
-(let (($x21205 (or $x8666 $x16288 (not (>= v_b_L_H_max_G_1$ 0)) (not (<= v_b_L_H_max_G_1$ 255)) $x20374 $x20375 (not (<= v_b_L_H_p_G_0$ 4294967295)) (not (>= (+ v_b_P_H_len$ (* (- 1) v_b_L_H_p_G_0$)) 0)) $x21046 $x12435 $x20379 $x20190 $x20219 (not (b_S_call_n_transition$ v_b_S_s$ v_b_S_s$)) (not (b_S_good_n_state_n_ext$ b_H_tok_S_1_T_16_o_3$ v_b_S_s$)) (not $x3893) (not $x3894) (not $x3895) (not $x3896) (not $x3897) (not $x3898) $x21202)))
-(let (($x21208 (not $x21205)))
-(let (($x21211 (or $x8666 $x16288 $x21208)))
-(let (($x21214 (not $x21211)))
-(let (($x21033 (forall ((?v0 Int) )(!(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12367 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x3765)) 0)))
-(let (($x12354 (>= ?v0 1)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12354 $x12367)))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
-))
-(let (($x21217 (or (not $x21033) $x21214)))
-(let (($x21220 (not $x21217)))
-(let ((?x16270 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ ?x3680 ?v0!13 b_T_T_u1$))))
-(let (($x16273 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x16270)) 0)))
-(let (($x16265 (>= ?v0!13 1)))
-(let (($x20031 (or (not (>= ?v0!13 0)) (not (<= ?v0!13 4294967295)) $x16265 $x16273)))
-(let (($x20036 (not $x20031)))
-(let (($x21223 (or $x20036 $x21220)))
-(let (($x21226 (not $x21223)))
-(let (($x12348 (>= v_b_P_H_len$ 1)))
-(let (($x12351 (not $x12348)))
-(let (($x21229 (or $x12351 $x21226)))
-(let (($x21232 (not $x21229)))
-(let (($x8667 (not $x8666)))
-(let (($x3720 (<= v_b_P_H_len$ b_S_max_o_u4$)))
-(let (($x3719 (<= 0 v_b_P_H_len$)))
-(let (($x8707 (forall ((?v0 B_S_ptr$) )(!(let (($x3715 (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?v0)))
-(not $x3715)) :pattern ( (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?v0) )))
-))
-(let ((?x3713 (b_S_current_n_timestamp$ v_b_S_s$)))
-(let (($x3714 (= v_b_H_wrTime_S_1_T_6_o_1$ ?x3713)))
-(let (($x3711 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_6_o_1$ b_H_loc_o_len$ v_b_P_H_len$ b_T_T_u4$)))
-(let (($x3709 (b_S_local_n_value_n_is_n_ptr$ v_b_S_s$ b_H_tok_S_1_T_6_o_1$ b_H_loc_o_arr$ ?x3680 ?x991)))
-(let (($x3708 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_6_o_1$ b_H_loc_o_arr$ (b_S_ptr_n_to_n_int$ ?x3680) ?x991)))
-(let (($x8701 (forall ((?v0 B_S_pure_n_function$) )(!(not (<= b_S_current_n_frame_n_level$ (b_S_frame_n_level$ ?v0))) :pattern ( (b_S_frame_n_level$ ?v0) )))
-))
-(let (($x3699 (b_S_full_n_stop$ v_b_S_s$)))
-(let (($x3698 (b_S_good_n_state_n_ext$ b_H_tok_S_1_T_6_o_1$ v_b_S_s$)))
-(let (($x3697 (b_S_function_n_entry$ v_b_S_s$)))
-(let ((?x3678 (b_S_array$ b_T_T_u1$ v_b_P_H_len$)))
-(let (($x3691 (b_S_is_n_non_n_primitive$ ?x3678)))
-(let (($x3690 (not (= (b_S_kind_n_of$ ?x3678) b_S_kind_n_primitive$))))
-(let ((?x3682 (b_S_ptr$ ?x3678 ?x3681)))
-(let (($x3687 (b_S_typed$ v_b_S_s$ ?x3682)))
-(let (($x3686 (b_S_is$ ?x3682 ?x3678)))
-(let ((?x3684 (b_S_owner$ v_b_S_s$ ?x3682)))
-(let (($x3685 (= ?x3684 b_S_me$)))
-(let (($x3683 (b_S_closed$ v_b_S_s$ ?x3682)))
-(let (($x8657 (<= 1099511627776 v_b_P_H_len$)))
-(let (($x8658 (not $x8657)))
-(let (($x3672 (<= v_b_SL_H_witness$ b_S_max_o_u4$)))
-(let (($x3671 (<= 0 v_b_SL_H_witness$)))
-(let (($x3668 (<= v_b_L_H_p$ b_S_max_o_u4$)))
-(let (($x3667 (<= 0 v_b_L_H_p$)))
-(let (($x3663 (<= 0 v_b_L_H_max$)))
-(let (($x8820 (and $x3663 (<= v_b_L_H_max$ b_S_max_o_u1$) $x3667 $x3668 $x3671 $x3672 $x8658 $x8667 $x3683 $x3685 $x3686 $x3687 $x3690 $x3691 $x3697 $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let (($x9207 (exists ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3840 (= ?x3765 v_b_S_result_G_0$)))
-(let (($x9165 (not (<= v_b_P_H_len$ ?v0))))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(and $x1212 $x1344 $x9165 $x3840)))))))
-))
-(let (($x9185 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3837 (<= ?x3765 v_b_S_result_G_0$)))
-(let (($x9165 (not (<= v_b_P_H_len$ ?v0))))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(let (($x9171 (and $x1212 $x1344 $x9165)))
-(or (not $x9171) $x3837))))))))
-))
-(let (($x9228 (or (not $x9185) $x9207)))
-(let (($x9233 (and $x9185 $x9228)))
-(let (($x3822 (= v_b_SL_H_witness_G_2$ v_b_SL_H_witness_G_0$)))
-(let (($x3820 (= v_b_L_H_p_G_2$ v_b_L_H_p_G_0$)))
-(let (($x3818 (= v_b_L_H_max_G_4$ v_b_L_H_max_G_1$)))
-(let (($x3776 (<= 0 v_b_SL_H_witness_G_0$)))
-(let (($x3783 (<= 1 v_b_L_H_p_G_0$)))
-(let (($x9159 (and b_S_position_n_marker$ $x3783 $x3776 $x3818 $x3820 $x3822 $x3824)))
-(let (($x9240 (or (not $x9159) $x9233)))
-(let (($x9245 (and b_S_position_n_marker$ $x9240)))
-(let (($x9963 (or (not (and $x3783 $x3776 (<= v_b_P_H_len$ v_b_L_H_p_G_0$))) $x9245)))
-(let (($x9687 (not (<= v_b_P_H_len$ v_b_SL_H_witness_G_1$))))
-(let (($x9690 (and $x9687 $x3976)))
-(let (($x9683 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3970 (<= ?x3765 v_b_L_H_max_G_3$)))
-(let (($x9663 (not (<= v_b_L_H_p_G_1$ ?v0))))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(let (($x9669 (and $x1212 $x1344 $x9663)))
-(or (not $x9669) $x3970))))))))
-))
-(let (($x9718 (or (not $x9683) $x9690)))
-(let (($x9723 (and $x9683 $x9718)))
-(let (($x9730 (or (not (<= v_b_L_H_p_G_1$ v_b_P_H_len$)) $x9723)))
-(let (($x3967 (<= v_b_L_H_p_G_1$ v_b_P_H_len$)))
-(let (($x9735 (and $x3967 $x9730)))
-(let (($x3943 (<= 0 v_b_SL_H_witness_G_1$)))
-(let (($x3961 (<= 2 v_b_L_H_p_G_1$)))
-(let ((?x9600 (+ 1 v_b_L_H_p_G_0$)))
-(let (($x9623 (= v_b_L_H_p_G_1$ ?x9600)))
-(let (($x9615 (<= v_b_L_H_p_G_0$ (+ (- 1) b_S_max_o_u4$))))
-(let (($x9606 (<= (- 1) v_b_L_H_p_G_0$)))
-(let (($x9657 (and $x9606 $x9615 $x9623 $x3960 $x3961 $x3943)))
-(let (($x9742 (or (not $x9657) $x9735)))
-(let (($x9750 (and $x9606 $x9615 $x9742)))
-(let (($x3994 (= v_b_SL_H_witness_G_1$ v_b_SL_H_witness_G_0$)))
-(let (($x3992 (<= ?x3929 v_b_L_H_max_G_1$)))
-(let (($x9858 (and $x3783 $x3776 $x3992 $x3993 $x3994 $x3943)))
-(let (($x9874 (or (not $x9858) $x9750)))
-(let (($x3942 (= v_b_SL_H_witness_G_1$ v_b_L_H_p_G_0$)))
-(let (($x3935 (= v_b_L_H_max_G_2$ ?x3929)))
-(let (($x9595 (and $x3923 $x3926 $x3935 $x3936 $x3937 $x3783 $x3940 $x3942 $x3943)))
-(let (($x9759 (or (not $x9595) $x9750)))
-(let (($x9767 (and $x3923 $x3926 $x9759)))
-(let (($x3925 (and $x3923 $x3924)))
-(let (($x9775 (not $x3925)))
-(let (($x9776 (or $x9775 $x9767)))
-(let (($x9784 (and $x3923 $x3924 $x9776)))
-(let (($x9793 (or (not (and $x3783 $x3776 (not $x3992))) $x9784)))
-(let (($x9879 (and $x9793 $x9874)))
-(let (($x9886 (or (not (and $x3923 $x3926 $x3783 $x3776)) $x9879)))
-(let (($x9894 (and $x3923 $x3926 $x9886)))
-(let (($x9902 (or $x9775 $x9894)))
-(let (($x9910 (and $x3923 $x3924 $x9902)))
-(let (($x9919 (or (not (and $x3783 $x3776 (not (<= v_b_P_H_len$ v_b_L_H_p_G_0$)))) $x9910)))
-(let (($x9968 (and $x9919 $x9963)))
-(let (($x3806 (b_S_good_n_state_n_ext$ b_H_tok_S_1_T_16_o_3$ v_b_S_s$)))
-(let (($x3886 (b_S_call_n_transition$ v_b_S_s$ v_b_S_s$)))
-(let (($x9434 (and $x3783 $x3776 $x3886 $x3806 $x3699 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898)))
-(let (($x9974 (not $x9434)))
-(let (($x8960 (not (<= v_b_P_H_len$ v_b_SL_H_witness_G_0$))))
-(let (($x8956 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3788 (<= ?x3765 v_b_L_H_max_G_1$)))
-(let (($x8936 (not (<= v_b_L_H_p_G_0$ ?v0))))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(let (($x8942 (and $x1212 $x1344 $x8936)))
-(or (not $x8942) $x3788))))))))
-))
-(let (($x3785 (<= v_b_L_H_p_G_0$ v_b_P_H_len$)))
-(let (($x3781 (<= v_b_L_H_p_G_0$ b_S_max_o_u4$)))
-(let (($x3780 (<= 0 v_b_L_H_p_G_0$)))
-(let (($x3777 (<= v_b_SL_H_witness_G_0$ b_S_max_o_u4$)))
-(let (($x3773 (<= v_b_L_H_max_G_1$ b_S_max_o_u1$)))
-(let (($x3772 (<= 0 v_b_L_H_max_G_1$)))
-(let (($x9032 (and $x8667 $x3769 $x3772 $x3773 $x3776 $x3777 $x3780 $x3781 $x3783 $x3785 $x8956 $x8960 $x3794)))
-(let (($x9991 (or (not $x9032) $x9974 $x9968)))
-(let (($x9999 (and $x8667 $x3769 $x9991)))
-(let (($x8913 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3766 (<= ?x3765 v_b_L_H_max_G_0$)))
-(let (($x8887 (<= 1 ?v0)))
-(let (($x8888 (not $x8887)))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(let (($x8899 (and $x1212 $x1344 $x8888)))
-(or (not $x8899) $x3766)))))))))
-))
-(let (($x10008 (or (not $x8913) $x9999)))
-(let (($x10013 (and $x8913 $x10008)))
-(let (($x10020 (or (not (<= 1 v_b_P_H_len$)) $x10013)))
-(let (($x3761 (<= 1 v_b_P_H_len$)))
-(let (($x10025 (and $x3761 $x10020)))
-(let (($x3750 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_8$ b_H_loc_o_p$ 1 b_T_T_u4$)))
-(let (($x3749 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_14_o_3$ b_H_loc_o_witness$ 0 b_T_T_u4$)))
-(let (($x3748 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_12_o_3$ b_H_loc_o_max$ v_b_L_H_max_G_0$ b_T_T_u1$)))
-(let (($x3747 (= v_b_L_H_max_G_0$ ?x3746)))
-(let (($x3743 (b_S_thread_n_local$ v_b_S_s$ ?x3739)))
-(let (($x8880 (and $x3740 $x3743 $x3747 $x3748 $x3749 $x3750)))
-(let (($x10031 (not $x8880)))
-(let (($x10032 (or $x10031 $x10025)))
-(let (($x10040 (and $x3740 $x3743 $x10032)))
-(let (($x3741 (b_S_typed$ v_b_S_s$ ?x3739)))
-(let (($x3742 (and $x3740 $x3741)))
-(let (($x10048 (not $x3742)))
-(let (($x10049 (or $x10048 $x10040)))
-(let (($x10057 (and $x3740 $x3741 $x10049)))
-(let (($x3738 (b_S_in_n_domain_n_lab$ v_b_S_s$ ?x3682 ?x3682 b_l_H_public$)))
-(let (($x10065 (not $x3738)))
-(let (($x10066 (or $x10065 $x10057)))
-(let (($x10071 (and $x3738 $x10066)))
-(let (($x10078 (or (not $x8820) $x10071)))
-(let (($x3844 (exists ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3840 (= ?x3765 v_b_S_result_G_0$)))
-(let (($x3835 (< ?v0 v_b_P_H_len$)))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x3842 (and $x1344 (and $x3835 $x3840))))
-(let (($x1212 (<= 0 ?v0)))
-(and $x1212 $x3842))))))))
-))
-(let (($x3845 (=> $x3844 true)))
-(let (($x3846 (and $x3844 $x3845)))
-(let (($x3839 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3837 (<= ?x3765 v_b_S_result_G_0$)))
-(let (($x3835 (< ?v0 v_b_P_H_len$)))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(let (($x1345 (and $x1212 $x1344)))
-(let (($x3836 (and $x1345 $x3835)))
-(=> $x3836 $x3837)))))))))
-))
-(let (($x3847 (=> $x3839 $x3846)))
-(let (($x3827 (and $x3820 (and $x3822 (and $x3824 true)))))
-(let (($x3828 (and $x3818 $x3827)))
-(let (($x3829 (and true $x3828)))
-(let (($x3784 (and $x3783 $x3776)))
-(let (($x3830 (and $x3784 $x3829)))
-(let (($x3831 (and $x3784 $x3830)))
-(let (($x3832 (and true $x3831)))
-(let (($x3833 (and $x3784 $x3832)))
-(let (($x3834 (and b_S_position_n_marker$ $x3833)))
-(let (($x3849 (=> $x3834 (and $x3839 $x3847))))
-(let (($x3850 (and b_S_position_n_marker$ $x3849)))
-(let (($x3808 (and true $x3784)))
-(let (($x3809 (and $x3784 $x3808)))
-(let (($x4013 (and $x3784 $x3809)))
-(let (($x4014 (and true $x4013)))
-(let (($x4015 (and $x3784 $x4014)))
-(let (($x4012 (<= v_b_P_H_len$ v_b_L_H_p_G_0$)))
-(let (($x4016 (and $x4012 $x4015)))
-(let (($x4017 (and $x3784 $x4016)))
-(let (($x4018 (and true $x4017)))
-(let (($x4019 (=> $x4018 $x3850)))
-(let (($x3977 (and (< v_b_SL_H_witness_G_1$ v_b_P_H_len$) $x3976)))
-(let (($x3978 (and $x3977 false)))
-(let (($x3979 (=> $x3978 true)))
-(let (($x3980 (and $x3977 $x3979)))
-(let (($x3972 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3970 (<= ?x3765 v_b_L_H_max_G_3$)))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(let (($x1345 (and $x1212 $x1344)))
-(let (($x3969 (and $x1345 (< ?v0 v_b_L_H_p_G_1$))))
-(=> $x3969 $x3970))))))))
-))
-(let (($x3981 (=> $x3972 $x3980)))
-(let (($x3983 (=> $x3967 (and $x3972 $x3981))))
-(let (($x3962 (and $x3961 $x3943)))
-(let (($x3963 (and $x3962 true)))
-(let (($x3964 (and $x3960 $x3963)))
-(let (($x3965 (and (= v_b_L_H_p_G_1$ (+ v_b_L_H_p_G_0$ 1)) $x3964)))
-(let ((?x3954 (+ v_b_L_H_p_G_0$ 1)))
-(let (($x3956 (<= ?x3954 b_S_max_o_u4$)))
-(let (($x3955 (<= 0 ?x3954)))
-(let (($x3957 (and $x3955 $x3956)))
-(let (($x3966 (and $x3957 $x3965)))
-(let (($x3985 (=> $x3966 (and $x3967 $x3983))))
-(let (($x3986 (and $x3957 $x3985)))
-(let (($x3944 (and $x3783 $x3943)))
-(let (($x3945 (and true $x3944)))
-(let (($x3995 (and $x3994 $x3945)))
-(let (($x3996 (and $x3993 $x3995)))
-(let (($x3997 (and true $x3996)))
-(let (($x3998 (and $x3784 $x3997)))
-(let (($x3999 (and $x3784 $x3998)))
-(let (($x4000 (and true $x3999)))
-(let (($x4001 (and $x3784 $x4000)))
-(let (($x4002 (and $x3992 $x4001)))
-(let (($x4003 (and $x3784 $x4002)))
-(let (($x4004 (and true $x4003)))
-(let (($x4005 (=> $x4004 $x3986)))
-(let (($x3946 (and $x3942 $x3945)))
-(let (($x3947 (and $x3940 $x3946)))
-(let (($x3948 (and true $x3947)))
-(let (($x3938 (and $x3783 $x3783)))
-(let (($x3949 (and $x3938 $x3948)))
-(let (($x3950 (and $x3937 $x3949)))
-(let (($x3951 (and $x3936 $x3950)))
-(let (($x3952 (and $x3935 $x3951)))
-(let (($x3927 (and $x3923 $x3926)))
-(let (($x3953 (and $x3927 $x3952)))
-(let (($x3987 (=> $x3953 $x3986)))
-(let (($x3988 (and $x3927 $x3987)))
-(let (($x3989 (=> $x3925 $x3988)))
-(let (($x3990 (and $x3925 $x3989)))
-(let (($x3931 (and (< v_b_L_H_max_G_1$ ?x3929) $x3809)))
-(let (($x3932 (and $x3784 $x3931)))
-(let (($x3933 (and true $x3932)))
-(let (($x3991 (=> $x3933 $x3990)))
-(let (($x3928 (and $x3927 $x3784)))
-(let (($x4007 (=> $x3928 (and $x3991 $x4005))))
-(let (($x4008 (and $x3927 $x4007)))
-(let (($x4009 (=> $x3925 $x4008)))
-(let (($x4010 (and $x3925 $x4009)))
-(let (($x3919 (and (< v_b_L_H_p_G_0$ v_b_P_H_len$) $x3809)))
-(let (($x3920 (and $x3784 $x3919)))
-(let (($x3921 (and true $x3920)))
-(let (($x4011 (=> $x3921 $x4010)))
-(let (($x3902 (and (= ?x3874 ?x3874) (= (b_S_statusmap$ v_b_S_s$) (b_S_statusmap$ v_b_S_s$)))))
-(let (($x3903 (and $x3902 $x3784)))
-(let (($x3904 (and (and $x3897 $x3898) $x3903)))
-(let (($x3905 (and $x3896 $x3904)))
-(let (($x3906 (and $x3895 $x3905)))
-(let (($x3907 (and $x3894 $x3906)))
-(let (($x3908 (and $x3893 $x3907)))
-(let (($x3807 (and $x3806 $x3699)))
-(let (($x3909 (and $x3807 $x3908)))
-(let (($x3885 (forall ((?v0 B_S_ptr$) )(!(let ((?x3882 (b_S_timestamp$ v_b_S_s$ ?v0)))
-(<= ?x3882 ?x3882)) :pattern ( (b_S_timestamp$ v_b_S_s$ ?v0) )))
-))
-(let (($x3887 (and $x3885 $x3886)))
-(let (($x3888 (and (<= ?x3713 ?x3713) $x3887)))
-(let (($x3910 (and $x3888 $x3909)))
-(let (($x3880 (forall ((?v0 B_S_ptr$) )(!(let (($x3862 (b_S_thread_n_local$ v_b_S_s$ ?v0)))
-(let ((?x3874 (b_S_typemap$ v_b_S_s$)))
-(let ((?x3875 (b_S_select_o_tm$ ?x3874 ?v0)))
-(let (($x3877 (and (= ?x3875 ?x3875) $x3862)))
-(=> $x3862 $x3877))))) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ v_b_S_s$) ?v0) )))
-))
-(let (($x3889 (and $x3880 $x3888)))
-(let (($x3873 (forall ((?v0 B_S_ptr$) )(!(let (($x3862 (b_S_thread_n_local$ v_b_S_s$ ?v0)))
-(let ((?x3858 (b_S_statusmap$ v_b_S_s$)))
-(let ((?x3859 (b_S_select_o_sm$ ?x3858 ?v0)))
-(let (($x3871 (and (= ?x3859 ?x3859) $x3862)))
-(=> $x3862 $x3871))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ v_b_S_s$) ?v0) )))
-))
-(let (($x3890 (and $x3873 $x3889)))
-(let (($x3869 (forall ((?v0 B_S_ptr$) )(!(let (($x3862 (b_S_thread_n_local$ v_b_S_s$ ?v0)))
-(let ((?x3864 (b_S_select_o_mem$ (b_S_memory$ v_b_S_s$) ?v0)))
-(let (($x3866 (and (= ?x3864 ?x3864) $x3862)))
-(=> $x3862 $x3866)))) :pattern ( (b_S_select_o_mem$ (b_S_memory$ v_b_S_s$) ?v0) )))
-))
-(let (($x3891 (and $x3869 $x3890)))
-(let (($x3861 (forall ((?v0 B_S_ptr$) )(!(let (($x3855 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_owner$ v_b_S_s$ ?v0))) b_S_kind_n_thread$)))
-(=> (not $x3855) (not $x3855))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ v_b_S_s$) ?v0) )))
-))
-(let (($x3892 (and $x3861 $x3891)))
-(let (($x3911 (and $x3892 $x3910)))
-(let (($x3912 (and $x3784 $x3911)))
-(let (($x3913 (and true $x3912)))
-(let (($x3914 (and $x3784 $x3913)))
-(let (($x3915 (and true $x3914)))
-(let (($x3916 (and $x3784 $x3915)))
-(let (($x3917 (and true $x3916)))
-(let (($x4021 (=> $x3917 (and $x4011 $x4019))))
-(let (($x3810 (and $x3807 $x3809)))
-(let (($x3811 (and $x3784 $x3810)))
-(let (($x3812 (and true $x3811)))
-(let (($x3813 (and $x3784 $x3812)))
-(let (($x3805 (not true)))
-(let (($x3814 (and $x3805 $x3813)))
-(let (($x3815 (and $x3784 $x3814)))
-(let (($x3816 (and true $x3815)))
-(let (($x3851 (=> $x3816 $x3850)))
-(let (($x4022 (and $x3851 $x4021)))
-(let (($x3796 (and (and (< v_b_SL_H_witness_G_0$ v_b_P_H_len$) $x3794) $x3784)))
-(let (($x3790 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3788 (<= ?x3765 v_b_L_H_max_G_1$)))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(let (($x1345 (and $x1212 $x1344)))
-(let (($x3787 (and $x1345 (< ?v0 v_b_L_H_p_G_0$))))
-(=> $x3787 $x3788))))))))
-))
-(let (($x3797 (and $x3790 $x3796)))
-(let (($x3798 (and $x3785 $x3797)))
-(let (($x3799 (and $x3784 $x3798)))
-(let (($x3782 (and $x3780 $x3781)))
-(let (($x3800 (and $x3782 $x3799)))
-(let (($x3778 (and $x3776 $x3777)))
-(let (($x3801 (and $x3778 $x3800)))
-(let (($x3774 (and $x3772 $x3773)))
-(let (($x3802 (and $x3774 $x3801)))
-(let (($x3803 (and true $x3802)))
-(let (($x3676 (< 0 v_b_P_H_len$)))
-(let (($x3770 (and $x3676 $x3769)))
-(let (($x3804 (and $x3770 $x3803)))
-(let (($x4023 (=> $x3804 $x4022)))
-(let (($x4024 (and $x3770 $x4023)))
-(let (($x3768 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3766 (<= ?x3765 v_b_L_H_max_G_0$)))
-(let (($x1344 (<= ?v0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?v0)))
-(let (($x1345 (and $x1212 $x1344)))
-(let (($x3763 (and $x1345 (< ?v0 1))))
-(=> $x3763 $x3766))))))))
-))
-(let (($x4025 (=> $x3768 $x4024)))
-(let (($x4027 (=> $x3761 (and $x3768 $x4025))))
-(let (($x3752 (<= 0 0)))
-(let (($x3753 (and $x3752 $x3752)))
-(let (($x3751 (<= 1 1)))
-(let (($x3754 (and $x3751 $x3753)))
-(let (($x3755 (and $x3751 $x3754)))
-(let (($x3756 (and $x3750 $x3755)))
-(let (($x3758 (and $x3748 (and $x3749 $x3756))))
-(let (($x3759 (and $x3747 $x3758)))
-(let (($x3744 (and $x3740 $x3743)))
-(let (($x3760 (and $x3744 $x3759)))
-(let (($x4029 (=> $x3760 (and $x3761 $x4027))))
-(let (($x4030 (and $x3744 $x4029)))
-(let (($x4031 (=> $x3742 $x4030)))
-(let (($x4032 (and $x3742 $x4031)))
-(let (($x4033 (=> $x3738 $x4032)))
-(let (($x3721 (and $x3719 $x3720)))
-(let (($x3718 (forall ((?v0 B_S_ptr$) )(!(let (($x3715 (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?v0)))
-(= $x3715 false)) :pattern ( (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?v0) )))
-))
-(let (($x3722 (and $x3718 $x3721)))
-(let (($x3723 (and $x3714 $x3722)))
-(let (($x3724 (and $x3711 $x3723)))
-(let (($x3725 (and (and $x3708 $x3709) $x3724)))
-(let (($x3706 (forall ((?v0 B_S_pure_n_function$) )(!(let ((?x3702 (b_S_frame_n_level$ ?v0)))
-(< ?x3702 b_S_current_n_frame_n_level$)) :pattern ( (b_S_frame_n_level$ ?v0) )))
-))
-(let (($x3726 (and $x3706 $x3725)))
-(let (($x3727 (and (and $x3698 $x3699) $x3726)))
-(let (($x3728 (and $x3697 $x3727)))
-(let (($x3729 (and true $x3728)))
-(let (($x3694 (and $x3686 (and $x3687 (and $x3690 $x3691)))))
-(let (($x3695 (and $x3685 $x3694)))
-(let (($x3696 (and $x3683 $x3695)))
-(let (($x3730 (and $x3696 $x3729)))
-(let (($x3731 (and $x3676 $x3730)))
-(let (($x3732 (and (< v_b_P_H_len$ 1099511627776) $x3731)))
-(let (($x3673 (and $x3671 $x3672)))
-(let (($x3733 (and $x3673 $x3732)))
-(let (($x3669 (and $x3667 $x3668)))
-(let (($x3734 (and $x3669 $x3733)))
-(let (($x3665 (and $x3663 (<= v_b_L_H_max$ b_S_max_o_u1$))))
-(let (($x3735 (and $x3665 $x3734)))
-(let (($x3736 (and true $x3735)))
-(let (($x4035 (=> $x3736 (and $x3738 $x4033))))
-(let (($x4036 (not $x4035)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ ?x3680 ?0 b_T_T_u1$))))
-(let (($x3840 (= ?x3765 v_b_S_result_G_0$)))
-(let (($x9165 (not (<= v_b_P_H_len$ ?0))))
-(let (($x1344 (<= ?0 b_S_max_o_u4$)))
-(let (($x1212 (<= 0 ?0)))
-(let (($x9202 (and $x1212 $x1344 $x9165 $x3840)))
-(let (($x3842 (and $x1344 (and (< ?0 v_b_P_H_len$) $x3840))))
-(let (($x3843 (and $x1212 $x3842)))
-(let ((@x9190 (monotonicity (rewrite (= (< ?0 v_b_P_H_len$) $x9165)) (= (and (< ?0 v_b_P_H_len$) $x3840) (and $x9165 $x3840)))))
-(let ((@x9198 (trans (monotonicity @x9190 (= $x3842 (and $x1344 (and $x9165 $x3840)))) (rewrite (= (and $x1344 (and $x9165 $x3840)) (and $x1344 $x9165 $x3840))) (= $x3842 (and $x1344 $x9165 $x3840)))))
-(let ((@x5396 (rewrite (= $x1212 $x1212))))
-(let ((@x9206 (trans (monotonicity @x5396 @x9198 (= $x3843 (and $x1212 (and $x1344 $x9165 $x3840)))) (rewrite (= (and $x1212 (and $x1344 $x9165 $x3840)) $x9202)) (= $x3843 $x9202))))
-(let ((@x9212 (monotonicity (quant-intro @x9206 (= $x3844 $x9207)) (= $x3845 (=> $x9207 true)))))
-(let ((@x9216 (trans @x9212 (rewrite (= (=> $x9207 true) true)) (= $x3845 true))))
-(let ((@x9219 (monotonicity (quant-intro @x9206 (= $x3844 $x9207)) @x9216 (= $x3846 (and $x9207 true)))))
-(let (($x3837 (<= ?x3765 v_b_S_result_G_0$)))
-(let (($x9180 (or (not (and $x1212 $x1344 $x9165)) $x3837)))
-(let (($x3835 (< ?0 v_b_P_H_len$)))
-(let (($x1345 (and $x1212 $x1344)))
-(let (($x3836 (and $x1345 $x3835)))
-(let (($x3838 (=> $x3836 $x3837)))
-(let ((@x5523 (monotonicity @x5396 (= $x1345 $x1345))))
-(let ((@x9170 (monotonicity @x5523 (rewrite (= $x3835 $x9165)) (= $x3836 (and $x1345 $x9165)))))
-(let ((@x9175 (trans @x9170 (rewrite (= (and $x1345 $x9165) (and $x1212 $x1344 $x9165))) (= $x3836 (and $x1212 $x1344 $x9165)))))
-(let ((@x9184 (trans (monotonicity @x9175 (= $x3838 (=> (and $x1212 $x1344 $x9165) $x3837))) (rewrite (= (=> (and $x1212 $x1344 $x9165) $x3837) $x9180)) (= $x3838 $x9180))))
-(let ((@x9226 (monotonicity (quant-intro @x9184 (= $x3839 $x9185)) (trans @x9219 (rewrite (= (and $x9207 true) $x9207)) (= $x3846 $x9207)) (= $x3847 (=> $x9185 $x9207)))))
-(let ((@x9235 (monotonicity (quant-intro @x9184 (= $x3839 $x9185)) (trans @x9226 (rewrite (= (=> $x9185 $x9207) $x9228)) (= $x3847 $x9228)) (= (and $x3839 $x3847) $x9233))))
-(let (($x9160 (= (and b_S_position_n_marker$ (and $x3783 $x3776 $x3818 $x3820 $x3822 $x3824)) $x9159)))
-(let (($x9157 (= $x3834 (and b_S_position_n_marker$ (and $x3783 $x3776 $x3818 $x3820 $x3822 $x3824)))))
-(let (($x9133 (and $x3783 $x3776 $x3818 $x3820 $x3822 $x3824)))
-(let (($x9138 (and $x3784 $x9133)))
-(let (($x9118 (and $x3818 $x3820 $x3822 $x3824)))
-(let ((@x9106 (monotonicity (rewrite (= (and $x3824 true) $x3824)) (= (and $x3822 (and $x3824 true)) (and $x3822 $x3824)))))
-(let ((@x9114 (trans (monotonicity @x9106 (= $x3827 (and $x3820 (and $x3822 $x3824)))) (rewrite (= (and $x3820 (and $x3822 $x3824)) (and $x3820 $x3822 $x3824))) (= $x3827 (and $x3820 $x3822 $x3824)))))
-(let ((@x9122 (trans (monotonicity @x9114 (= $x3828 (and $x3818 (and $x3820 $x3822 $x3824)))) (rewrite (= (and $x3818 (and $x3820 $x3822 $x3824)) $x9118)) (= $x3828 $x9118))))
-(let ((@x9129 (trans (monotonicity @x9122 (= $x3829 (and true $x9118))) (rewrite (= (and true $x9118) $x9118)) (= $x3829 $x9118))))
-(let ((@x8932 (rewrite (= $x3783 $x3783))))
-(let ((@x8934 (monotonicity @x8932 (rewrite (= $x3776 $x3776)) (= $x3784 $x3784))))
-(let ((@x9137 (trans (monotonicity @x8934 @x9129 (= $x3830 (and $x3784 $x9118))) (rewrite (= (and $x3784 $x9118) $x9133)) (= $x3830 $x9133))))
-(let ((@x9144 (trans (monotonicity @x8934 @x9137 (= $x3831 $x9138)) (rewrite (= $x9138 $x9133)) (= $x3831 $x9133))))
-(let ((@x9151 (trans (monotonicity @x9144 (= $x3832 (and true $x9133))) (rewrite (= (and true $x9133) $x9133)) (= $x3832 $x9133))))
-(let ((@x9155 (trans (monotonicity @x8934 @x9151 (= $x3833 $x9138)) (rewrite (= $x9138 $x9133)) (= $x3833 $x9133))))
-(let ((@x9238 (monotonicity (trans (monotonicity @x9155 $x9157) (rewrite $x9160) (= $x3834 $x9159)) @x9235 (= $x3849 (=> $x9159 $x9233)))))
-(let ((@x9247 (monotonicity (trans @x9238 (rewrite (= (=> $x9159 $x9233) $x9240)) (= $x3849 $x9240)) (= $x3850 $x9245))))
-(let ((@x9956 (rewrite (= (and true (and $x3783 $x3776 $x4012)) (and $x3783 $x3776 $x4012)))))
-(let ((@x9048 (rewrite (= (and $x3784 $x3784) $x3784))))
-(let ((@x9042 (rewrite (= $x3808 $x3784))))
-(let ((@x9046 (monotonicity @x8934 (trans (monotonicity @x8934 (= $x3808 $x3808)) @x9042 (= $x3808 $x3784)) (= $x3809 (and $x3784 $x3784)))))
-(let ((@x9050 (trans @x9046 @x9048 (= $x3809 $x3784))))
-(let ((@x9927 (trans (monotonicity @x8934 @x9050 (= $x4013 (and $x3784 $x3784))) @x9048 (= $x4013 $x3784))))
-(let ((@x9933 (monotonicity @x8934 (trans (monotonicity @x9927 (= $x4014 $x3808)) @x9042 (= $x4014 $x3784)) (= $x4015 (and $x3784 $x3784)))))
-(let ((@x9938 (monotonicity (trans @x9933 @x9048 (= $x4015 $x3784)) (= $x4016 (and $x4012 $x3784)))))
-(let ((@x9943 (trans @x9938 (rewrite (= (and $x4012 $x3784) (and $x4012 $x3783 $x3776))) (= $x4016 (and $x4012 $x3783 $x3776)))))
-(let ((@x9951 (trans (monotonicity @x8934 @x9943 (= $x4017 (and $x3784 (and $x4012 $x3783 $x3776)))) (rewrite (= (and $x3784 (and $x4012 $x3783 $x3776)) (and $x3783 $x3776 $x4012))) (= $x4017 (and $x3783 $x3776 $x4012)))))
-(let ((@x9958 (trans (monotonicity @x9951 (= $x4018 (and true (and $x3783 $x3776 $x4012)))) @x9956 (= $x4018 (and $x3783 $x3776 $x4012)))))
-(let ((@x9967 (trans (monotonicity @x9958 @x9247 (= $x4019 (=> (and $x3783 $x3776 $x4012) $x9245))) (rewrite (= (=> (and $x3783 $x3776 $x4012) $x9245) $x9963)) (= $x4019 $x9963))))
-(let ((@x9692 (monotonicity (rewrite (= (< v_b_SL_H_witness_G_1$ v_b_P_H_len$) $x9687)) (= $x3977 $x9690))))
-(let ((@x9699 (trans (monotonicity @x9692 (= $x3978 (and $x9690 false))) (rewrite (= (and $x9690 false) false)) (= $x3978 false))))
-(let ((@x9706 (trans (monotonicity @x9699 (= $x3979 (=> false true))) (rewrite (= (=> false true) true)) (= $x3979 true))))
-(let ((@x9713 (trans (monotonicity @x9692 @x9706 (= $x3980 (and $x9690 true))) (rewrite (= (and $x9690 true) $x9690)) (= $x3980 $x9690))))
-(let (($x3970 (<= ?x3765 v_b_L_H_max_G_3$)))
-(let (($x9678 (or (not (and $x1212 $x1344 (not (<= v_b_L_H_p_G_1$ ?0)))) $x3970)))
-(let (($x3969 (and $x1345 (< ?0 v_b_L_H_p_G_1$))))
-(let (($x3971 (=> $x3969 $x3970)))
-(let ((@x9680 (rewrite (= (=> (and $x1212 $x1344 (not (<= v_b_L_H_p_G_1$ ?0))) $x3970) $x9678))))
-(let (($x9663 (not (<= v_b_L_H_p_G_1$ ?0))))
-(let (($x9669 (and $x1212 $x1344 $x9663)))
-(let ((@x9668 (monotonicity @x5523 (rewrite (= (< ?0 v_b_L_H_p_G_1$) $x9663)) (= $x3969 (and $x1345 $x9663)))))
-(let ((@x9676 (monotonicity (trans @x9668 (rewrite (= (and $x1345 $x9663) $x9669)) (= $x3969 $x9669)) (= $x3971 (=> $x9669 $x3970)))))
-(let ((@x9716 (monotonicity (quant-intro (trans @x9676 @x9680 (= $x3971 $x9678)) (= $x3972 $x9683)) @x9713 (= $x3981 (=> $x9683 $x9690)))))
-(let ((@x9725 (monotonicity (quant-intro (trans @x9676 @x9680 (= $x3971 $x9678)) (= $x3972 $x9683)) (trans @x9716 (rewrite (= (=> $x9683 $x9690) $x9718)) (= $x3981 $x9718)) (= (and $x3972 $x3981) $x9723))))
-(let ((@x9734 (trans (monotonicity @x9725 (= $x3983 (=> $x3967 $x9723))) (rewrite (= (=> $x3967 $x9723) $x9730)) (= $x3983 $x9730))))
-(let ((@x9651 (rewrite (= (and $x9623 (and $x3960 $x3961 $x3943)) (and $x9623 $x3960 $x3961 $x3943)))))
-(let ((@x9632 (monotonicity (rewrite (= $x3961 $x3961)) (rewrite (= $x3943 $x3943)) (= $x3962 $x3962))))
-(let ((@x9637 (trans (monotonicity @x9632 (= $x3963 $x3963)) (rewrite (= $x3963 $x3962)) (= $x3963 $x3962))))
-(let ((@x9645 (trans (monotonicity @x9637 (= $x3964 (and $x3960 $x3962))) (rewrite (= (and $x3960 $x3962) (and $x3960 $x3961 $x3943))) (= $x3964 (and $x3960 $x3961 $x3943)))))
-(let ((@x9602 (rewrite (= ?x3954 ?x9600))))
-(let ((@x9628 (trans (monotonicity @x9602 (= (= v_b_L_H_p_G_1$ ?x3954) $x9623)) (rewrite (= $x9623 $x9623)) (= (= v_b_L_H_p_G_1$ ?x3954) $x9623))))
-(let ((@x9653 (trans (monotonicity @x9628 @x9645 (= $x3965 (and $x9623 (and $x3960 $x3961 $x3943)))) @x9651 (= $x3965 (and $x9623 $x3960 $x3961 $x3943)))))
-(let ((@x9619 (trans (monotonicity @x9602 (= $x3956 (<= ?x9600 b_S_max_o_u4$))) (rewrite (= (<= ?x9600 b_S_max_o_u4$) $x9615)) (= $x3956 $x9615))))
-(let ((@x9610 (trans (monotonicity @x9602 (= $x3955 (<= 0 ?x9600))) (rewrite (= (<= 0 ?x9600) $x9606)) (= $x3955 $x9606))))
-(let ((@x9656 (monotonicity (monotonicity @x9610 @x9619 (= $x3957 (and $x9606 $x9615))) @x9653 (= $x3966 (and (and $x9606 $x9615) (and $x9623 $x3960 $x3961 $x3943))))))
-(let ((@x9661 (trans @x9656 (rewrite (= (and (and $x9606 $x9615) (and $x9623 $x3960 $x3961 $x3943)) $x9657)) (= $x3966 $x9657))))
-(let ((@x9740 (monotonicity @x9661 (monotonicity @x9734 (= (and $x3967 $x3983) $x9735)) (= $x3985 (=> $x9657 $x9735)))))
-(let ((@x9749 (monotonicity (monotonicity @x9610 @x9619 (= $x3957 (and $x9606 $x9615))) (trans @x9740 (rewrite (= (=> $x9657 $x9735) $x9742)) (= $x3985 $x9742)) (= $x3986 (and (and $x9606 $x9615) $x9742)))))
-(let ((@x9754 (trans @x9749 (rewrite (= (and (and $x9606 $x9615) $x9742) $x9750)) (= $x3986 $x9750))))
-(let (($x9850 (and $x3992 $x3783 $x3776 $x3993 $x3994 $x3943)))
-(let (($x9824 (and $x3783 $x3776 $x3993 $x3994 $x3943)))
-(let (($x9829 (and $x3784 $x9824)))
-(let (($x9809 (and $x3993 $x3994 $x3783 $x3943)))
-(let ((@x9533 (monotonicity (monotonicity @x8932 (rewrite (= $x3943 $x3943)) (= $x3944 $x3944)) (= $x3945 $x3945))))
-(let ((@x9800 (monotonicity (trans @x9533 (rewrite (= $x3945 $x3944)) (= $x3945 $x3944)) (= $x3995 (and $x3994 $x3944)))))
-(let ((@x9805 (trans @x9800 (rewrite (= (and $x3994 $x3944) (and $x3994 $x3783 $x3943))) (= $x3995 (and $x3994 $x3783 $x3943)))))
-(let ((@x9813 (trans (monotonicity @x9805 (= $x3996 (and $x3993 (and $x3994 $x3783 $x3943)))) (rewrite (= (and $x3993 (and $x3994 $x3783 $x3943)) $x9809)) (= $x3996 $x9809))))
-(let ((@x9820 (trans (monotonicity @x9813 (= $x3997 (and true $x9809))) (rewrite (= (and true $x9809) $x9809)) (= $x3997 $x9809))))
-(let ((@x9828 (trans (monotonicity @x8934 @x9820 (= $x3998 (and $x3784 $x9809))) (rewrite (= (and $x3784 $x9809) $x9824)) (= $x3998 $x9824))))
-(let ((@x9835 (trans (monotonicity @x8934 @x9828 (= $x3999 $x9829)) (rewrite (= $x9829 $x9824)) (= $x3999 $x9824))))
-(let ((@x9842 (trans (monotonicity @x9835 (= $x4000 (and true $x9824))) (rewrite (= (and true $x9824) $x9824)) (= $x4000 $x9824))))
-(let ((@x9846 (trans (monotonicity @x8934 @x9842 (= $x4001 $x9829)) (rewrite (= $x9829 $x9824)) (= $x4001 $x9824))))
-(let ((@x9854 (trans (monotonicity @x9846 (= $x4002 (and $x3992 $x9824))) (rewrite (= (and $x3992 $x9824) $x9850)) (= $x4002 $x9850))))
-(let ((@x9862 (trans (monotonicity @x8934 @x9854 (= $x4003 (and $x3784 $x9850))) (rewrite (= (and $x3784 $x9850) $x9858)) (= $x4003 $x9858))))
-(let ((@x9869 (trans (monotonicity @x9862 (= $x4004 (and true $x9858))) (rewrite (= (and true $x9858) $x9858)) (= $x4004 $x9858))))
-(let ((@x9878 (trans (monotonicity @x9869 @x9754 (= $x4005 (=> $x9858 $x9750))) (rewrite (= (=> $x9858 $x9750) $x9874)) (= $x4005 $x9874))))
-(let ((@x9597 (rewrite (= (and $x3927 (and $x3935 $x3936 $x3937 $x3783 $x3940 $x3942 $x3943)) $x9595))))
-(let (($x9587 (and $x3935 $x3936 $x3937 $x3783 $x3940 $x3942 $x3943)))
-(let (($x9579 (and $x3936 $x3937 $x3783 $x3940 $x3942 $x3943)))
-(let (($x9571 (and $x3937 $x3783 $x3940 $x3942 $x3943)))
-(let (($x9563 (and $x3783 $x3940 $x3942 $x3943)))
-(let (($x9548 (and $x3940 $x3942 $x3783 $x3943)))
-(let ((@x9539 (monotonicity (trans @x9533 (rewrite (= $x3945 $x3944)) (= $x3945 $x3944)) (= $x3946 (and $x3942 $x3944)))))
-(let ((@x9544 (trans @x9539 (rewrite (= (and $x3942 $x3944) (and $x3942 $x3783 $x3943))) (= $x3946 (and $x3942 $x3783 $x3943)))))
-(let ((@x9552 (trans (monotonicity @x9544 (= $x3947 (and $x3940 (and $x3942 $x3783 $x3943)))) (rewrite (= (and $x3940 (and $x3942 $x3783 $x3943)) $x9548)) (= $x3947 $x9548))))
-(let ((@x9559 (trans (monotonicity @x9552 (= $x3948 (and true $x9548))) (rewrite (= (and true $x9548) $x9548)) (= $x3948 $x9548))))
-(let ((@x9527 (trans (monotonicity @x8932 @x8932 (= $x3938 $x3938)) (rewrite (= $x3938 $x3783)) (= $x3938 $x3783))))
-(let ((@x9567 (trans (monotonicity @x9527 @x9559 (= $x3949 (and $x3783 $x9548))) (rewrite (= (and $x3783 $x9548) $x9563)) (= $x3949 $x9563))))
-(let ((@x9575 (trans (monotonicity @x9567 (= $x3950 (and $x3937 $x9563))) (rewrite (= (and $x3937 $x9563) $x9571)) (= $x3950 $x9571))))
-(let ((@x9583 (trans (monotonicity @x9575 (= $x3951 (and $x3936 $x9571))) (rewrite (= (and $x3936 $x9571) $x9579)) (= $x3951 $x9579))))
-(let ((@x9591 (trans (monotonicity @x9583 (= $x3952 (and $x3935 $x9579))) (rewrite (= (and $x3935 $x9579) $x9587)) (= $x3952 $x9587))))
-(let ((@x9599 (trans (monotonicity @x9591 (= $x3953 (and $x3927 $x9587))) @x9597 (= $x3953 $x9595))))
-(let ((@x9763 (trans (monotonicity @x9599 @x9754 (= $x3987 (=> $x9595 $x9750))) (rewrite (= (=> $x9595 $x9750) $x9759)) (= $x3987 $x9759))))
-(let ((@x9771 (trans (monotonicity @x9763 (= $x3988 (and $x3927 $x9759))) (rewrite (= (and $x3927 $x9759) $x9767)) (= $x3988 $x9767))))
-(let ((@x9780 (trans (monotonicity @x9771 (= $x3989 (=> $x3925 $x9767))) (rewrite (= (=> $x3925 $x9767) $x9776)) (= $x3989 $x9776))))
-(let ((@x9788 (trans (monotonicity @x9780 (= $x3990 (and $x3925 $x9776))) (rewrite (= (and $x3925 $x9776) $x9784)) (= $x3990 $x9784))))
-(let (($x9497 (not $x3992)))
-(let (($x9511 (and $x3783 $x3776 $x9497)))
-(let ((@x9502 (monotonicity (rewrite (= (< v_b_L_H_max_G_1$ ?x3929) $x9497)) @x9050 (= $x3931 (and $x9497 $x3784)))))
-(let ((@x9507 (trans @x9502 (rewrite (= (and $x9497 $x3784) (and $x9497 $x3783 $x3776))) (= $x3931 (and $x9497 $x3783 $x3776)))))
-(let ((@x9515 (trans (monotonicity @x8934 @x9507 (= $x3932 (and $x3784 (and $x9497 $x3783 $x3776)))) (rewrite (= (and $x3784 (and $x9497 $x3783 $x3776)) $x9511)) (= $x3932 $x9511))))
-(let ((@x9522 (trans (monotonicity @x9515 (= $x3933 (and true $x9511))) (rewrite (= (and true $x9511) $x9511)) (= $x3933 $x9511))))
-(let ((@x9797 (trans (monotonicity @x9522 @x9788 (= $x3991 (=> $x9511 $x9784))) (rewrite (= (=> $x9511 $x9784) $x9793)) (= $x3991 $x9793))))
-(let ((@x9496 (trans (monotonicity @x8934 (= $x3928 $x3928)) (rewrite (= $x3928 (and $x3923 $x3926 $x3783 $x3776))) (= $x3928 (and $x3923 $x3926 $x3783 $x3776)))))
-(let ((@x9884 (monotonicity @x9496 (monotonicity @x9797 @x9878 (= (and $x3991 $x4005) $x9879)) (= $x4007 (=> (and $x3923 $x3926 $x3783 $x3776) $x9879)))))
-(let ((@x9890 (trans @x9884 (rewrite (= (=> (and $x3923 $x3926 $x3783 $x3776) $x9879) $x9886)) (= $x4007 $x9886))))
-(let ((@x9898 (trans (monotonicity @x9890 (= $x4008 (and $x3927 $x9886))) (rewrite (= (and $x3927 $x9886) $x9894)) (= $x4008 $x9894))))
-(let ((@x9906 (trans (monotonicity @x9898 (= $x4009 (=> $x3925 $x9894))) (rewrite (= (=> $x3925 $x9894) $x9902)) (= $x4009 $x9902))))
-(let ((@x9914 (trans (monotonicity @x9906 (= $x4010 (and $x3925 $x9902))) (rewrite (= (and $x3925 $x9902) $x9910)) (= $x4010 $x9910))))
-(let (($x9465 (not $x4012)))
-(let (($x9479 (and $x3783 $x3776 $x9465)))
-(let ((@x9470 (monotonicity (rewrite (= (< v_b_L_H_p_G_0$ v_b_P_H_len$) $x9465)) @x9050 (= $x3919 (and $x9465 $x3784)))))
-(let ((@x9475 (trans @x9470 (rewrite (= (and $x9465 $x3784) (and $x9465 $x3783 $x3776))) (= $x3919 (and $x9465 $x3783 $x3776)))))
-(let ((@x9483 (trans (monotonicity @x8934 @x9475 (= $x3920 (and $x3784 (and $x9465 $x3783 $x3776)))) (rewrite (= (and $x3784 (and $x9465 $x3783 $x3776)) $x9479)) (= $x3920 $x9479))))
-(let ((@x9490 (trans (monotonicity @x9483 (= $x3921 (and true $x9479))) (rewrite (= (and true $x9479) $x9479)) (= $x3921 $x9479))))
-(let ((@x9923 (trans (monotonicity @x9490 @x9914 (= $x4011 (=> $x9479 $x9910))) (rewrite (= (=> $x9479 $x9910) $x9919)) (= $x4011 $x9919))))
-(let ((@x9443 (rewrite (= (and true $x9434) $x9434))))
-(let (($x9419 (and $x3886 $x3806 $x3699 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)))
-(let (($x9420 (= (and $x3886 (and $x3806 $x3699 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)) $x9419)))
-(let (($x9417 (= $x3910 (and $x3886 (and $x3806 $x3699 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)))))
-(let (($x9411 (and $x3806 $x3699 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)))
-(let ((@x9413 (rewrite (= (and $x3807 (and $x3893 $x3894 $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)) $x9411))))
-(let (($x9403 (and $x3893 $x3894 $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)))
-(let ((@x9405 (rewrite (= (and $x3893 (and $x3894 $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)) $x9403))))
-(let (($x9395 (and $x3894 $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)))
-(let (($x9387 (and $x3895 $x3896 $x3897 $x3898 $x3783 $x3776)))
-(let (($x9379 (and $x3896 $x3897 $x3898 $x3783 $x3776)))
-(let ((@x8840 (rewrite (= (and true true) true))))
-(let ((@x9359 (rewrite (= (= (b_S_statusmap$ v_b_S_s$) (b_S_statusmap$ v_b_S_s$)) true))))
-(let ((@x9361 (monotonicity (rewrite (= (= ?x3874 ?x3874) true)) @x9359 (= $x3902 (and true true)))))
-(let ((@x9365 (monotonicity (trans @x9361 @x8840 (= $x3902 true)) @x8934 (= $x3903 $x3808))))
-(let ((@x9370 (monotonicity (trans @x9365 @x9042 (= $x3903 $x3784)) (= $x3904 (and (and $x3897 $x3898) $x3784)))))
-(let ((@x9375 (trans @x9370 (rewrite (= (and (and $x3897 $x3898) $x3784) (and $x3897 $x3898 $x3783 $x3776))) (= $x3904 (and $x3897 $x3898 $x3783 $x3776)))))
-(let ((@x9383 (trans (monotonicity @x9375 (= $x3905 (and $x3896 (and $x3897 $x3898 $x3783 $x3776)))) (rewrite (= (and $x3896 (and $x3897 $x3898 $x3783 $x3776)) $x9379)) (= $x3905 $x9379))))
-(let ((@x9391 (trans (monotonicity @x9383 (= $x3906 (and $x3895 $x9379))) (rewrite (= (and $x3895 $x9379) $x9387)) (= $x3906 $x9387))))
-(let ((@x9399 (trans (monotonicity @x9391 (= $x3907 (and $x3894 $x9387))) (rewrite (= (and $x3894 $x9387) $x9395)) (= $x3907 $x9395))))
-(let ((@x9407 (trans (monotonicity @x9399 (= $x3908 (and $x3893 $x9395))) @x9405 (= $x3908 $x9403))))
-(let ((@x9415 (trans (monotonicity @x9407 (= $x3909 (and $x3807 $x9403))) @x9413 (= $x3909 $x9411))))
-(let ((@x9333 (rewrite (= (and true $x3886) $x3886))))
-(let (($x9322 (forall ((?v0 B_S_ptr$) )(!true :pattern ( (b_S_timestamp$ v_b_S_s$ ?v0) )))
-))
-(let (($x9320 (= (<= (b_S_timestamp$ v_b_S_s$ ?0) (b_S_timestamp$ v_b_S_s$ ?0)) true)))
-(let ((@x9328 (trans (quant-intro (rewrite $x9320) (= $x3885 $x9322)) (elim-unused (= $x9322 true)) (= $x3885 true))))
-(let ((@x9335 (trans (monotonicity @x9328 (= $x3887 (and true $x3886))) @x9333 (= $x3887 $x3886))))
-(let ((@x9337 (monotonicity (rewrite (= (<= ?x3713 ?x3713) true)) @x9335 (= $x3888 (and true $x3886)))))
-(let ((@x9423 (trans (monotonicity (trans @x9337 @x9333 (= $x3888 $x3886)) @x9415 $x9417) (rewrite $x9420) (= $x3910 $x9419))))
-(let (($x9311 (forall ((?v0 B_S_ptr$) )(!true :pattern ( (b_S_select_o_tm$ (b_S_typemap$ v_b_S_s$) ?v0) )))
-))
-(let (($x3862 (b_S_thread_n_local$ v_b_S_s$ ?0)))
-(let (($x3877 (and (= (b_S_select_o_tm$ ?x3874 ?0) (b_S_select_o_tm$ ?x3874 ?0)) $x3862)))
-(let (($x3878 (=> $x3862 $x3877)))
-(let ((@x9277 (rewrite (= (=> $x3862 $x3862) true))))
-(let ((@x9270 (rewrite (= (and true $x3862) $x3862))))
-(let (($x9301 (= (= (b_S_select_o_tm$ ?x3874 ?0) (b_S_select_o_tm$ ?x3874 ?0)) true)))
-(let ((@x9306 (trans (monotonicity (rewrite $x9301) (= $x3877 (and true $x3862))) @x9270 (= $x3877 $x3862))))
-(let ((@x9310 (trans (monotonicity @x9306 (= $x3878 (=> $x3862 $x3862))) @x9277 (= $x3878 true))))
-(let ((@x9317 (trans (quant-intro @x9310 (= $x3880 $x9311)) (elim-unused (= $x9311 true)) (= $x3880 true))))
-(let ((@x9341 (monotonicity @x9317 (trans @x9337 @x9333 (= $x3888 $x3886)) (= $x3889 (and true $x3886)))))
-(let (($x9257 (forall ((?v0 B_S_ptr$) )(!true :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ v_b_S_s$) ?v0) )))
-))
-(let ((?x3858 (b_S_statusmap$ v_b_S_s$)))
-(let ((?x3859 (b_S_select_o_sm$ ?x3858 ?0)))
-(let (($x3871 (and (= ?x3859 ?x3859) $x3862)))
-(let (($x3872 (=> $x3862 $x3871)))
-(let ((@x9290 (monotonicity (rewrite (= (= ?x3859 ?x3859) true)) (= $x3871 (and true $x3862)))))
-(let ((@x9294 (monotonicity (trans @x9290 @x9270 (= $x3871 $x3862)) (= $x3872 (=> $x3862 $x3862)))))
-(let ((@x9300 (trans (quant-intro (trans @x9294 @x9277 (= $x3872 true)) (= $x3873 $x9257)) (elim-unused (= $x9257 true)) (= $x3873 true))))
-(let ((@x9345 (monotonicity @x9300 (trans @x9341 @x9333 (= $x3889 $x3886)) (= $x3890 (and true $x3886)))))
-(let (($x9280 (forall ((?v0 B_S_ptr$) )(!true :pattern ( (b_S_select_o_mem$ (b_S_memory$ v_b_S_s$) ?v0) )))
-))
-(let ((?x3864 (b_S_select_o_mem$ (b_S_memory$ v_b_S_s$) ?0)))
-(let (($x3866 (and (= ?x3864 ?x3864) $x3862)))
-(let (($x3867 (=> $x3862 $x3866)))
-(let ((@x9268 (monotonicity (rewrite (= (= ?x3864 ?x3864) true)) (= $x3866 (and true $x3862)))))
-(let ((@x9275 (monotonicity (trans @x9268 @x9270 (= $x3866 $x3862)) (= $x3867 (=> $x3862 $x3862)))))
-(let ((@x9286 (trans (quant-intro (trans @x9275 @x9277 (= $x3867 true)) (= $x3869 $x9280)) (elim-unused (= $x9280 true)) (= $x3869 true))))
-(let ((@x9349 (monotonicity @x9286 (trans @x9345 @x9333 (= $x3890 $x3886)) (= $x3891 (and true $x3886)))))
-(let (($x3855 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_owner$ v_b_S_s$ ?0))) b_S_kind_n_thread$)))
-(let ((@x9259 (quant-intro (rewrite (= (=> (not $x3855) (not $x3855)) true)) (= $x3861 $x9257))))
-(let ((@x9353 (monotonicity (trans @x9259 (elim-unused (= $x9257 true)) (= $x3861 true)) (trans @x9349 @x9333 (= $x3891 $x3886)) (= $x3892 (and true $x3886)))))
-(let ((@x9426 (monotonicity (trans @x9353 @x9333 (= $x3892 $x3886)) @x9423 (= $x3911 (and $x3886 $x9419)))))
-(let ((@x9433 (monotonicity @x8934 (trans @x9426 (rewrite (= (and $x3886 $x9419) $x9419)) (= $x3911 $x9419)) (= $x3912 (and $x3784 $x9419)))))
-(let ((@x9441 (monotonicity (trans @x9433 (rewrite (= (and $x3784 $x9419) $x9434)) (= $x3912 $x9434)) (= $x3913 (and true $x9434)))))
-(let ((@x9448 (monotonicity @x8934 (trans @x9441 @x9443 (= $x3913 $x9434)) (= $x3914 (and $x3784 $x9434)))))
-(let ((@x9454 (monotonicity (trans @x9448 (rewrite (= (and $x3784 $x9434) $x9434)) (= $x3914 $x9434)) (= $x3915 (and true $x9434)))))
-(let ((@x9458 (monotonicity @x8934 (trans @x9454 @x9443 (= $x3915 $x9434)) (= $x3916 (and $x3784 $x9434)))))
-(let ((@x9462 (monotonicity (trans @x9458 (rewrite (= (and $x3784 $x9434) $x9434)) (= $x3916 $x9434)) (= $x3917 (and true $x9434)))))
-(let ((@x9973 (monotonicity (trans @x9462 @x9443 (= $x3917 $x9434)) (monotonicity @x9923 @x9967 (= (and $x4011 $x4019) $x9968)) (= $x4021 (=> $x9434 $x9968)))))
-(let ((@x9979 (trans @x9973 (rewrite (= (=> $x9434 $x9968) (or $x9974 $x9968))) (= $x4021 (or $x9974 $x9968)))))
-(let (($x9062 (and $x3783 $x3776 $x3806 $x3699)))
-(let ((@x9058 (trans (monotonicity @x9050 (= $x3810 (and $x3807 $x3784))) (rewrite (= (and $x3807 $x3784) (and $x3806 $x3699 $x3783 $x3776))) (= $x3810 (and $x3806 $x3699 $x3783 $x3776)))))
-(let ((@x9061 (monotonicity @x8934 @x9058 (= $x3811 (and $x3784 (and $x3806 $x3699 $x3783 $x3776))))))
-(let ((@x9066 (trans @x9061 (rewrite (= (and $x3784 (and $x3806 $x3699 $x3783 $x3776)) $x9062)) (= $x3811 $x9062))))
-(let ((@x9073 (trans (monotonicity @x9066 (= $x3812 (and true $x9062))) (rewrite (= (and true $x9062) $x9062)) (= $x3812 $x9062))))
-(let ((@x9080 (trans (monotonicity @x8934 @x9073 (= $x3813 (and $x3784 $x9062))) (rewrite (= (and $x3784 $x9062) $x9062)) (= $x3813 $x9062))))
-(let ((@x9083 (monotonicity (rewrite (= $x3805 false)) @x9080 (= $x3814 (and false $x9062)))))
-(let ((@x9087 (trans @x9083 (rewrite (= (and false $x9062) false)) (= $x3814 false))))
-(let ((@x9094 (trans (monotonicity @x8934 @x9087 (= $x3815 (and $x3784 false))) (rewrite (= (and $x3784 false) false)) (= $x3815 false))))
-(let ((@x9101 (trans (monotonicity @x9094 (= $x3816 (and true false))) (rewrite (= (and true false) false)) (= $x3816 false))))
-(let ((@x9254 (trans (monotonicity @x9101 @x9247 (= $x3851 (=> false $x9245))) (rewrite (= (=> false $x9245) true)) (= $x3851 true))))
-(let ((@x9986 (trans (monotonicity @x9254 @x9979 (= $x4022 (and true (or $x9974 $x9968)))) (rewrite (= (and true (or $x9974 $x9968)) (or $x9974 $x9968))) (= $x4022 (or $x9974 $x9968)))))
-(let (($x9017 (and $x3772 $x3773 $x3776 $x3777 $x3780 $x3781 $x3783 $x3785 $x8956 $x8960 $x3794)))
-(let (($x8916 (and $x8667 $x3769)))
-(let (($x9018 (= (and $x3774 (and $x3776 $x3777 $x3780 $x3781 $x3783 $x3785 $x8956 $x8960 $x3794)) $x9017)))
-(let (($x9015 (= $x3802 (and $x3774 (and $x3776 $x3777 $x3780 $x3781 $x3783 $x3785 $x8956 $x8960 $x3794)))))
-(let (($x9009 (and $x3776 $x3777 $x3780 $x3781 $x3783 $x3785 $x8956 $x8960 $x3794)))
-(let ((@x9011 (rewrite (= (and $x3778 (and $x3780 $x3781 $x3783 $x3776 $x3785 $x8956 $x8960 $x3794)) $x9009))))
-(let (($x9001 (and $x3780 $x3781 $x3783 $x3776 $x3785 $x8956 $x8960 $x3794)))
-(let (($x8993 (and $x3783 $x3776 $x3785 $x8956 $x8960 $x3794)))
-(let (($x8985 (and $x3785 $x8956 $x8960 $x3794 $x3783 $x3776)))
-(let (($x8977 (and $x8956 $x8960 $x3794 $x3783 $x3776)))
-(let (($x8964 (= (and (< v_b_SL_H_witness_G_0$ v_b_P_H_len$) $x3794) (and $x8960 $x3794))))
-(let ((@x8965 (monotonicity (rewrite (= (< v_b_SL_H_witness_G_0$ v_b_P_H_len$) $x8960)) $x8964)))
-(let ((@x8973 (trans (monotonicity @x8965 @x8934 (= $x3796 (and (and $x8960 $x3794) $x3784))) (rewrite (= (and (and $x8960 $x3794) $x3784) (and $x8960 $x3794 $x3783 $x3776))) (= $x3796 (and $x8960 $x3794 $x3783 $x3776)))))
-(let (($x3788 (<= ?x3765 v_b_L_H_max_G_1$)))
-(let (($x8951 (or (not (and $x1212 $x1344 (not (<= v_b_L_H_p_G_0$ ?0)))) $x3788)))
-(let (($x3787 (and $x1345 (< ?0 v_b_L_H_p_G_0$))))
-(let (($x3789 (=> $x3787 $x3788)))
-(let ((@x8953 (rewrite (= (=> (and $x1212 $x1344 (not (<= v_b_L_H_p_G_0$ ?0))) $x3788) $x8951))))
-(let (($x8936 (not (<= v_b_L_H_p_G_0$ ?0))))
-(let (($x8942 (and $x1212 $x1344 $x8936)))
-(let ((@x8941 (monotonicity @x5523 (rewrite (= (< ?0 v_b_L_H_p_G_0$) $x8936)) (= $x3787 (and $x1345 $x8936)))))
-(let ((@x8949 (monotonicity (trans @x8941 (rewrite (= (and $x1345 $x8936) $x8942)) (= $x3787 $x8942)) (= $x3789 (=> $x8942 $x3788)))))
-(let ((@x8976 (monotonicity (quant-intro (trans @x8949 @x8953 (= $x3789 $x8951)) (= $x3790 $x8956)) @x8973 (= $x3797 (and $x8956 (and $x8960 $x3794 $x3783 $x3776))))))
-(let ((@x8981 (trans @x8976 (rewrite (= (and $x8956 (and $x8960 $x3794 $x3783 $x3776)) $x8977)) (= $x3797 $x8977))))
-(let ((@x8989 (trans (monotonicity @x8981 (= $x3798 (and $x3785 $x8977))) (rewrite (= (and $x3785 $x8977) $x8985)) (= $x3798 $x8985))))
-(let ((@x8997 (trans (monotonicity @x8934 @x8989 (= $x3799 (and $x3784 $x8985))) (rewrite (= (and $x3784 $x8985) $x8993)) (= $x3799 $x8993))))
-(let ((@x9000 (monotonicity (monotonicity (rewrite (= $x3780 $x3780)) (= $x3782 $x3782)) @x8997 (= $x3800 (and $x3782 $x8993)))))
-(let ((@x9008 (monotonicity (monotonicity (rewrite (= $x3776 $x3776)) (= $x3778 $x3778)) (trans @x9000 (rewrite (= (and $x3782 $x8993) $x9001)) (= $x3800 $x9001)) (= $x3801 (and $x3778 $x9001)))))
-(let ((@x9016 (monotonicity (monotonicity (rewrite (= $x3772 $x3772)) (= $x3774 $x3774)) (trans @x9008 @x9011 (= $x3801 $x9009)) $x9015)))
-(let ((@x9024 (monotonicity (trans @x9016 (rewrite $x9018) (= $x3802 $x9017)) (= $x3803 (and true $x9017)))))
-(let ((@x9031 (monotonicity (monotonicity (rewrite (= $x3676 $x8667)) (= $x3770 $x8916)) (trans @x9024 (rewrite (= (and true $x9017) $x9017)) (= $x3803 $x9017)) (= $x3804 (and $x8916 $x9017)))))
-(let ((@x9989 (monotonicity (trans @x9031 (rewrite (= (and $x8916 $x9017) $x9032)) (= $x3804 $x9032)) @x9986 (= $x4023 (=> $x9032 (or $x9974 $x9968))))))
-(let ((@x9995 (trans @x9989 (rewrite (= (=> $x9032 (or $x9974 $x9968)) $x9991)) (= $x4023 $x9991))))
-(let ((@x9998 (monotonicity (monotonicity (rewrite (= $x3676 $x8667)) (= $x3770 $x8916)) @x9995 (= $x4024 (and $x8916 $x9991)))))
-(let (($x3766 (<= ?x3765 v_b_L_H_max_G_0$)))
-(let (($x8908 (or (not (and $x1212 $x1344 (not (<= 1 ?0)))) $x3766)))
-(let (($x3763 (and $x1345 (< ?0 1))))
-(let (($x3767 (=> $x3763 $x3766)))
-(let (($x8887 (<= 1 ?0)))
-(let (($x8888 (not $x8887)))
-(let (($x8899 (and $x1212 $x1344 $x8888)))
-(let ((@x8895 (trans (rewrite (= (< ?0 1) $x8888)) (monotonicity (rewrite (= $x8887 $x8887)) (= $x8888 $x8888)) (= (< ?0 1) $x8888))))
-(let ((@x8903 (trans (monotonicity @x5523 @x8895 (= $x3763 (and $x1345 $x8888))) (rewrite (= (and $x1345 $x8888) $x8899)) (= $x3763 $x8899))))
-(let ((@x8912 (trans (monotonicity @x8903 (= $x3767 (=> $x8899 $x3766))) (rewrite (= (=> $x8899 $x3766) $x8908)) (= $x3767 $x8908))))
-(let ((@x10006 (monotonicity (quant-intro @x8912 (= $x3768 $x8913)) (trans @x9998 (rewrite (= (and $x8916 $x9991) $x9999)) (= $x4024 $x9999)) (= $x4025 (=> $x8913 $x9999)))))
-(let ((@x10015 (monotonicity (quant-intro @x8912 (= $x3768 $x8913)) (trans @x10006 (rewrite (= (=> $x8913 $x9999) $x10008)) (= $x4025 $x10008)) (= (and $x3768 $x4025) $x10013))))
-(let ((@x10018 (monotonicity (rewrite (= $x3761 $x3761)) @x10015 (= $x4027 (=> $x3761 $x10013)))))
-(let ((@x10027 (monotonicity (rewrite (= $x3761 $x3761)) (trans @x10018 (rewrite (= (=> $x3761 $x10013) $x10020)) (= $x4027 $x10020)) (= (and $x3761 $x4027) $x10025))))
-(let ((@x8874 (rewrite (= (and $x3747 (and $x3748 $x3749 $x3750)) (and $x3747 $x3748 $x3749 $x3750)))))
-(let ((@x8838 (monotonicity (rewrite (= $x3752 true)) (rewrite (= $x3752 true)) (= $x3753 (and true true)))))
-(let ((@x8844 (monotonicity (rewrite (= $x3751 true)) (trans @x8838 @x8840 (= $x3753 true)) (= $x3754 (and true true)))))
-(let ((@x8848 (monotonicity (rewrite (= $x3751 true)) (trans @x8844 @x8840 (= $x3754 true)) (= $x3755 (and true true)))))
-(let ((@x8853 (monotonicity (trans @x8848 @x8840 (= $x3755 true)) (= $x3756 (and $x3750 true)))))
-(let ((@x8860 (monotonicity (trans @x8853 (rewrite (= (and $x3750 true) $x3750)) (= $x3756 $x3750)) (= (and $x3749 $x3756) (and $x3749 $x3750)))))
-(let ((@x8868 (trans (monotonicity @x8860 (= $x3758 (and $x3748 (and $x3749 $x3750)))) (rewrite (= (and $x3748 (and $x3749 $x3750)) (and $x3748 $x3749 $x3750))) (= $x3758 (and $x3748 $x3749 $x3750)))))
-(let ((@x8876 (trans (monotonicity @x8868 (= $x3759 (and $x3747 (and $x3748 $x3749 $x3750)))) @x8874 (= $x3759 (and $x3747 $x3748 $x3749 $x3750)))))
-(let ((@x8884 (trans (monotonicity @x8876 (= $x3760 (and $x3744 (and $x3747 $x3748 $x3749 $x3750)))) (rewrite (= (and $x3744 (and $x3747 $x3748 $x3749 $x3750)) $x8880)) (= $x3760 $x8880))))
-(let ((@x10036 (trans (monotonicity @x8884 @x10027 (= $x4029 (=> $x8880 $x10025))) (rewrite (= (=> $x8880 $x10025) $x10032)) (= $x4029 $x10032))))
-(let ((@x10044 (trans (monotonicity @x10036 (= $x4030 (and $x3744 $x10032))) (rewrite (= (and $x3744 $x10032) $x10040)) (= $x4030 $x10040))))
-(let ((@x10053 (trans (monotonicity @x10044 (= $x4031 (=> $x3742 $x10040))) (rewrite (= (=> $x3742 $x10040) $x10049)) (= $x4031 $x10049))))
-(let ((@x10061 (trans (monotonicity @x10053 (= $x4032 (and $x3742 $x10049))) (rewrite (= (and $x3742 $x10049) $x10057)) (= $x4032 $x10057))))
-(let ((@x10070 (trans (monotonicity @x10061 (= $x4033 (=> $x3738 $x10057))) (rewrite (= (=> $x3738 $x10057) $x10066)) (= $x4033 $x10066))))
-(let (($x8812 (and $x3667 $x3668 $x3671 $x3672 $x8658 $x8667 $x3683 $x3685 $x3686 $x3687 $x3690 $x3691 $x3697 $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let (($x8804 (and $x3671 $x3672 $x8658 $x8667 $x3683 $x3685 $x3686 $x3687 $x3690 $x3691 $x3697 $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let (($x8796 (and $x8658 $x8667 $x3683 $x3685 $x3686 $x3687 $x3690 $x3691 $x3697 $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let (($x8788 (and $x8667 $x3683 $x3685 $x3686 $x3687 $x3690 $x3691 $x3697 $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let (($x8780 (and $x3683 $x3685 $x3686 $x3687 $x3690 $x3691 $x3697 $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let (($x8765 (and $x3697 $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let (($x8692 (and $x3683 $x3685 $x3686 $x3687 $x3690 $x3691)))
-(let (($x8766 (= (and $x3697 (and $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)) $x8765)))
-(let (($x8763 (= $x3728 (and $x3697 (and $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))))
-(let (($x8757 (and $x3698 $x3699 $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let (($x8758 (= (and (and $x3698 $x3699) (and $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)) $x8757)))
-(let (($x8755 (= $x3727 (and (and $x3698 $x3699) (and $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))))
-(let (($x8749 (and $x8701 $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let ((@x8751 (rewrite (= (and $x8701 (and $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)) $x8749))))
-(let (($x8741 (and $x3708 $x3709 $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let ((@x8743 (rewrite (= (and (and $x3708 $x3709) (and $x3711 $x3714 $x8707 $x3719 $x3720)) $x8741))))
-(let (($x8733 (and $x3711 $x3714 $x8707 $x3719 $x3720)))
-(let ((@x8727 (rewrite (= (and $x3714 (and $x8707 $x3719 $x3720)) (and $x3714 $x8707 $x3719 $x3720)))))
-(let (($x8705 (= (= (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?0) false) (not (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?0)))))
-(let ((@x8716 (monotonicity (quant-intro (rewrite $x8705) (= $x3718 $x8707)) (monotonicity (rewrite (= $x3719 $x3719)) (= $x3721 $x3721)) (= $x3722 (and $x8707 $x3721)))))
-(let ((@x8721 (trans @x8716 (rewrite (= (and $x8707 $x3721) (and $x8707 $x3719 $x3720))) (= $x3722 (and $x8707 $x3719 $x3720)))))
-(let ((@x8729 (trans (monotonicity @x8721 (= $x3723 (and $x3714 (and $x8707 $x3719 $x3720)))) @x8727 (= $x3723 (and $x3714 $x8707 $x3719 $x3720)))))
-(let ((@x8737 (trans (monotonicity @x8729 (= $x3724 (and $x3711 (and $x3714 $x8707 $x3719 $x3720)))) (rewrite (= (and $x3711 (and $x3714 $x8707 $x3719 $x3720)) $x8733)) (= $x3724 $x8733))))
-(let ((@x8745 (trans (monotonicity @x8737 (= $x3725 (and (and $x3708 $x3709) $x8733))) @x8743 (= $x3725 $x8741))))
-(let (($x8699 (= (< (b_S_frame_n_level$ ?0) b_S_current_n_frame_n_level$) (not (<= b_S_current_n_frame_n_level$ (b_S_frame_n_level$ ?0))))))
-(let ((@x8748 (monotonicity (quant-intro (rewrite $x8699) (= $x3706 $x8701)) @x8745 (= $x3726 (and $x8701 $x8741)))))
-(let ((@x8761 (trans (monotonicity (trans @x8748 @x8751 (= $x3726 $x8749)) $x8755) (rewrite $x8758) (= $x3727 $x8757))))
-(let ((@x8772 (monotonicity (trans (monotonicity @x8761 $x8763) (rewrite $x8766) (= $x3728 $x8765)) (= $x3729 (and true $x8765)))))
-(let (($x8684 (and $x3685 $x3686 $x3687 $x3690 $x3691)))
-(let ((@x8678 (rewrite (= (and $x3686 (and $x3687 $x3690 $x3691)) (and $x3686 $x3687 $x3690 $x3691)))))
-(let ((@x8675 (monotonicity (rewrite (= (and $x3687 (and $x3690 $x3691)) (and $x3687 $x3690 $x3691))) (= $x3694 (and $x3686 (and $x3687 $x3690 $x3691))))))
-(let ((@x8683 (monotonicity (trans @x8675 @x8678 (= $x3694 (and $x3686 $x3687 $x3690 $x3691))) (= $x3695 (and $x3685 (and $x3686 $x3687 $x3690 $x3691))))))
-(let ((@x8688 (trans @x8683 (rewrite (= (and $x3685 (and $x3686 $x3687 $x3690 $x3691)) $x8684)) (= $x3695 $x8684))))
-(let ((@x8696 (trans (monotonicity @x8688 (= $x3696 (and $x3683 $x8684))) (rewrite (= (and $x3683 $x8684) $x8692)) (= $x3696 $x8692))))
-(let ((@x8779 (monotonicity @x8696 (trans @x8772 (rewrite (= (and true $x8765) $x8765)) (= $x3729 $x8765)) (= $x3730 (and $x8692 $x8765)))))
-(let ((@x8787 (monotonicity (rewrite (= $x3676 $x8667)) (trans @x8779 (rewrite (= (and $x8692 $x8765) $x8780)) (= $x3730 $x8780)) (= $x3731 (and $x8667 $x8780)))))
-(let ((@x8665 (trans (rewrite (= (< v_b_P_H_len$ 1099511627776) $x8658)) (monotonicity (rewrite (= $x8657 $x8657)) (= $x8658 $x8658)) (= (< v_b_P_H_len$ 1099511627776) $x8658))))
-(let ((@x8795 (monotonicity @x8665 (trans @x8787 (rewrite (= (and $x8667 $x8780) $x8788)) (= $x3731 $x8788)) (= $x3732 (and $x8658 $x8788)))))
-(let ((@x8803 (monotonicity (monotonicity (rewrite (= $x3671 $x3671)) (= $x3673 $x3673)) (trans @x8795 (rewrite (= (and $x8658 $x8788) $x8796)) (= $x3732 $x8796)) (= $x3733 (and $x3673 $x8796)))))
-(let ((@x8811 (monotonicity (monotonicity (rewrite (= $x3667 $x3667)) (= $x3669 $x3669)) (trans @x8803 (rewrite (= (and $x3673 $x8796) $x8804)) (= $x3733 $x8804)) (= $x3734 (and $x3669 $x8804)))))
-(let ((@x8819 (monotonicity (monotonicity (rewrite (= $x3663 $x3663)) (= $x3665 $x3665)) (trans @x8811 (rewrite (= (and $x3669 $x8804) $x8812)) (= $x3734 $x8812)) (= $x3735 (and $x3665 $x8812)))))
-(let ((@x8827 (monotonicity (trans @x8819 (rewrite (= (and $x3665 $x8812) $x8820)) (= $x3735 $x8820)) (= $x3736 (and true $x8820)))))
-(let ((@x10076 (monotonicity (trans @x8827 (rewrite (= (and true $x8820) $x8820)) (= $x3736 $x8820)) (monotonicity @x10070 (= (and $x3738 $x4033) $x10071)) (= $x4035 (=> $x8820 $x10071)))))
-(let ((@x10085 (monotonicity (trans @x10076 (rewrite (= (=> $x8820 $x10071) $x10078)) (= $x4035 $x10078)) (= $x4036 (not $x10078)))))
-(let ((@x10087 (not-or-elim (mp (asserted $x4036) @x10085 (not $x10078)) $x8820)))
-(let ((@x10095 (and-elim @x10087 $x8667)))
-(let (($x21235 (or $x12351 $x21232)))
-(let (($x21238 (not $x21235)))
-(let (($x16251 (not $x3743)))
-(let (($x16242 (not $x3740)))
-(let (($x21241 (or $x16242 $x16251 (not $x3747) (not $x3748) (not $x3749) (not $x3750) $x21238)))
-(let (($x21244 (not $x21241)))
-(let (($x23354 (= (b_S_kind_n_of$ (b_S_typ$ ?x23206)) b_S_kind_n_primitive$)))
-(let ((?x22173 (b_S_kind_n_of$ b_T_T_u1$)))
-(let (($x22174 (= ?x22173 b_S_kind_n_primitive$)))
-(let (($x3529 (b_S_is_n_primitive$ b_T_T_u1$)))
-(let (($x22181 (= $x3529 $x22174)))
-(let (($x12265 (forall ((?v0 B_S_ctype$) )(!(let (($x1179 (b_S_is_n_primitive$ ?v0)))
-(= $x1179 (= (b_S_kind_n_of$ ?v0) b_S_kind_n_primitive$))) :pattern ( (b_S_is_n_primitive$ ?v0) )))
-))
-(let (($x1179 (b_S_is_n_primitive$ ?0)))
-(let (($x12261 (= $x1179 (= (b_S_kind_n_of$ ?0) b_S_kind_n_primitive$))))
-(let (($x3575 (forall ((?v0 B_S_ctype$) )(!(let (($x1179 (b_S_is_n_primitive$ ?v0)))
-(= $x1179 (= (b_S_kind_n_of$ ?v0) b_S_kind_n_primitive$))) :pattern ( (b_S_is_n_primitive$ ?v0) )))
-))
-(let ((@x12264 (rewrite (= (= $x1179 (= (b_S_kind_n_of$ ?0) b_S_kind_n_primitive$)) $x12261))))
-(let ((@x16196 (mp~ (mp (asserted $x3575) (quant-intro @x12264 (= $x3575 $x12265)) $x12265) (nnf-pos (refl (~ $x12261 $x12261)) (~ $x12265 $x12265)) $x12265)))
-(let ((@x5093 (asserted $x3529)))
-(let ((@x23476 (unit-resolution (def-axiom (or (not $x22181) (not $x3529) $x22174)) @x5093 (or (not $x22181) $x22174))))
-(let ((@x23477 (unit-resolution @x23476 (unit-resolution ((_ quant-inst b_T_T_u1$) (or (not $x12265) $x22181)) @x16196 $x22181) $x22174)))
-(let ((@x23492 (unit-resolution (def-axiom (or (not $x23223) $x16242 $x23216)) @x23251 (or (not $x23223) $x23216))))
-(let ((@x23499 (unit-resolution @x23492 (unit-resolution ((_ quant-inst (b_S_idx$ ?x3680 0 b_T_T_u1$) b_T_T_u1$) (or (not $x20961) $x23223)) @x20966 $x23223) $x23216)))
-(let ((@x23922 (symm (unit-resolution @x23405 @x16076 @x23251 $x23207) (= ?x23206 ?x3739))))
-(let ((@x23778 (trans (monotonicity @x23922 (= (b_S_typ$ ?x23206) ?x23215)) @x23499 (= (b_S_typ$ ?x23206) b_T_T_u1$))))
-(let ((@x23574 (trans (monotonicity @x23778 (= (b_S_kind_n_of$ (b_S_typ$ ?x23206)) ?x22173)) @x23477 $x23354)))
-(let (($x23361 (not (b_S_closed$ v_b_S_s$ (b_S_ts_n_emb$ (b_S_select_o_tm$ ?x3874 ?x23206))))))
-(let ((?x23356 (b_S_select_o_tm$ ?x3874 ?x23206)))
-(let (($x23357 (b_S_ts_n_is_n_volatile$ ?x23356)))
-(let (($x23358 (not $x23357)))
-(let (($x23362 (or $x23358 $x23361)))
-(let ((@x24072 (monotonicity @x23922 (= ?x23356 (b_S_select_o_tm$ ?x3874 ?x3739)))))
-(let ((@x23530 (monotonicity @x24072 (= $x23357 (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x3874 ?x3739))))))
-(let ((@x23502 (symm @x23530 (= (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x3874 ?x3739)) $x23357))))
-(let ((@x23522 (monotonicity @x23502 (= (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x3874 ?x3739))) $x23358))))
-(let ((?x23179 (b_S_select_o_tm$ ?x3874 ?x3739)))
-(let (($x23303 (b_S_ts_n_is_n_volatile$ ?x23179)))
-(let (($x23260 (not $x23303)))
-(let (($x16245 (not $x3741)))
-(let (($x23304 (or $x16245 $x23303)))
-(let (($x23305 (not $x23304)))
-(let ((?x23296 (b_S_ptr$ ?x3678 v_b_P_H_arr$)))
-(let (($x23297 (b_S_set_n_in$ ?x23296 (b_S_domain$ v_b_S_s$ (b_S_ptr$ ?x3678 (b_S_ref$ ?x3682))))))
-(let ((?x21715 (b_S_ref$ ?x3682)))
-(let ((?x22684 (b_S_ptr$ ?x3678 ?x21715)))
-(let (($x23045 (b_S_set_n_in$ ?x22684 (b_S_domain$ v_b_S_s$ ?x22684))))
-(let ((@x23339 (monotonicity (symm @x23283 (= v_b_P_H_arr$ ?x3681)) (= ?x23296 ?x3682))))
-(let (($x22691 (= ?x3682 ?x22684)))
-(let (($x22699 (= (or (not $x8559) (or (not $x3686) $x22691)) (or (not $x8559) (not $x3686) $x22691))))
-(let ((@x22701 (mp ((_ quant-inst (b_S_ptr$ ?x3678 ?x3681) (b_S_array$ b_T_T_u1$ v_b_P_H_len$)) (or (not $x8559) (or (not $x3686) $x22691))) (rewrite $x22699) (or (not $x8559) (not $x3686) $x22691))))
-(let ((@x24449 (symm (unit-resolution @x22701 @x16076 (and-elim @x10087 $x3686) $x22691) (= ?x22684 ?x3682))))
-(let ((@x23394 (monotonicity (trans @x24449 (symm @x23339 (= ?x3682 ?x23296)) (= ?x22684 ?x23296)) (= $x23045 $x23297))))
-(let (($x23063 (forall ((?v3 B_S_ptr$) )(!(let ((?x3680 (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$)))
-(let ((?x3681 (b_S_ref$ ?x3680)))
-(let ((?x3678 (b_S_array$ b_T_T_u1$ v_b_P_H_len$)))
-(let ((?x3682 (b_S_ptr$ ?x3678 ?x3681)))
-(let ((?x21715 (b_S_ref$ ?x3682)))
-(let ((?x22684 (b_S_ptr$ ?x3678 ?x21715)))
-(let (($x23060 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ v_b_S_s$ ?x22684)))))
-(or (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?x22684)) (not (b_S_set_n_in$ ?v3 (b_S_owns$ v_b_S_s$ ?x22684))) $x23060)))))))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ v_b_S_s$ (b_S_ptr$ (b_S_array$ b_T_T_u1$ v_b_P_H_len$) (b_S_ref$ (b_S_ptr$ (b_S_array$ b_T_T_u1$ v_b_P_H_len$) (b_S_ref$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$))))))) )))
-))
-(let (($x22949 (b_S_closed$ v_b_S_s$ ?x22684)))
-(let (($x22973 (not $x22949)))
-(let (($x23066 (not (or (not $x23045) $x22973 (not $x23063)))))
-(let (($x23019 (b_S_in_n_domain$ v_b_S_s$ ?x22684 ?x22684)))
-(let (($x23018 (b_S_in_n_domain_n_lab$ v_b_S_s$ ?x22684 ?x22684 b_l_H_public$)))
-(let (($x23027 (= $x23018 $x23019)))
-(let (($x12066 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) (?v3 B_S_label$) )(!(let (($x3056 (b_S_in_n_domain_n_lab$ ?v0 ?v1 ?v2 ?v3)))
-(= $x3056 (b_S_in_n_domain$ ?v0 ?v1 ?v2))) :pattern ( (b_S_in_n_domain_n_lab$ ?v0 ?v1 ?v2 ?v3) )))
-))
-(let (($x3056 (b_S_in_n_domain_n_lab$ ?3 ?2 ?1 ?0)))
-(let (($x12062 (= $x3056 (b_S_in_n_domain$ ?3 ?2 ?1))))
-(let (($x3060 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) (?v3 B_S_label$) )(!(let (($x3056 (b_S_in_n_domain_n_lab$ ?v0 ?v1 ?v2 ?v3)))
-(= $x3056 (b_S_in_n_domain$ ?v0 ?v1 ?v2))) :pattern ( (b_S_in_n_domain_n_lab$ ?v0 ?v1 ?v2 ?v3) )))
-))
-(let ((@x12068 (quant-intro (rewrite (= (= $x3056 (b_S_in_n_domain$ ?3 ?2 ?1)) $x12062)) (= $x3060 $x12066))))
-(let ((@x15761 (mp~ (mp (asserted $x3060) @x12068 $x12066) (nnf-pos (refl (~ $x12062 $x12062)) (~ $x12066 $x12066)) $x12066)))
-(let (($x36 (= b_S_kind_n_primitive$ b_S_kind_n_array$)))
-(let (($x37 (not $x36)))
-(let (($x23052 (= $x37 (not (= (b_S_kind_n_of$ (b_S_typ$ ?x22684)) b_S_kind_n_primitive$)))))
-(let ((?x22935 (b_S_typ$ ?x22684)))
-(let ((?x23088 (b_S_kind_n_of$ ?x22935)))
-(let (($x23089 (= ?x23088 b_S_kind_n_primitive$)))
-(let ((?x3688 (b_S_kind_n_of$ ?x3678)))
-(let (($x22849 (= ?x3688 b_S_kind_n_array$)))
-(let (($x21816 (b_S_is_n_arraytype$ ?x3678)))
-(let (($x22850 (= $x21816 $x22849)))
-(let (($x12251 (forall ((?v0 B_S_ctype$) )(!(let (($x2733 (b_S_is_n_arraytype$ ?v0)))
-(= $x2733 (= (b_S_kind_n_of$ ?v0) b_S_kind_n_array$))) :pattern ( (b_S_is_n_arraytype$ ?v0) )))
-))
-(let (($x2733 (b_S_is_n_arraytype$ ?0)))
-(let (($x12247 (= $x2733 (= (b_S_kind_n_of$ ?0) b_S_kind_n_array$))))
-(let (($x3569 (forall ((?v0 B_S_ctype$) )(!(let (($x2733 (b_S_is_n_arraytype$ ?v0)))
-(= $x2733 (= (b_S_kind_n_of$ ?v0) b_S_kind_n_array$))) :pattern ( (b_S_is_n_arraytype$ ?v0) )))
-))
-(let ((@x12250 (rewrite (= (= $x2733 (= (b_S_kind_n_of$ ?0) b_S_kind_n_array$)) $x12247))))
-(let ((@x16186 (mp~ (mp (asserted $x3569) (quant-intro @x12250 (= $x3569 $x12251)) $x12251) (nnf-pos (refl (~ $x12247 $x12247)) (~ $x12251 $x12251)) $x12251)))
-(let (($x2482 (forall ((?v0 B_S_ctype$) (?v1 Int) )(!(let ((?x2267 (b_S_array$ ?v0 ?v1)))
-(b_S_is_n_arraytype$ ?x2267)) :pattern ( (b_S_array$ ?v0 ?v1) )))
-))
-(let ((?x2267 (b_S_array$ ?1 ?0)))
-(let (($x2481 (b_S_is_n_arraytype$ ?x2267)))
-(let ((@x15316 (mp~ (asserted $x2482) (nnf-pos (refl (~ $x2481 $x2481)) (~ $x2482 $x2482)) $x2482)))
-(let ((@x24927 (unit-resolution (def-axiom (or (not $x22850) (not $x21816) $x22849)) (unit-resolution ((_ quant-inst b_T_T_u1$ v_b_P_H_len$) (or (not $x2482) $x21816)) @x15316 $x21816) (or (not $x22850) $x22849))))
-(let ((@x24928 (unit-resolution @x24927 (unit-resolution ((_ quant-inst (b_S_array$ b_T_T_u1$ v_b_P_H_len$)) (or (not $x12251) $x22850)) @x16186 $x22850) $x22849)))
-(let ((@x24406 (unit-resolution ((_ quant-inst (b_S_array$ b_T_T_u1$ v_b_P_H_len$) (b_S_ref$ ?x3680)) (or (not $x20974) (= (b_S_typ$ ?x3682) ?x3678))) @x20979 (= (b_S_typ$ ?x3682) ?x3678))))
-(let ((@x23038 (trans (monotonicity @x24449 (= ?x22935 (b_S_typ$ ?x3682))) @x24406 (= ?x22935 ?x3678))))
-(let ((@x23042 (trans (monotonicity @x23038 (= ?x23088 ?x3688)) @x24928 (= ?x23088 b_S_kind_n_array$))))
-(let ((@x23031 (monotonicity @x23042 (= $x23089 (= b_S_kind_n_array$ b_S_kind_n_primitive$)))))
-(let ((@x23049 (trans @x23031 (commutativity (= (= b_S_kind_n_array$ b_S_kind_n_primitive$) $x36)) (= $x23089 $x36))))
-(let (($x45 (and (not (= b_S_kind_n_composite$ b_S_kind_n_array$)) (and (not (= b_S_kind_n_thread$ b_S_kind_n_array$)) true))))
-(let (($x47 (and $x37 (and (not (= b_S_kind_n_composite$ b_S_kind_n_thread$)) $x45))))
-(let (($x49 (and (not (= b_S_kind_n_primitive$ b_S_kind_n_composite$)) (and (not (= b_S_kind_n_primitive$ b_S_kind_n_thread$)) $x47))))
-(let ((@x4039 (and-elim (asserted $x49) (and (not (= b_S_kind_n_primitive$ b_S_kind_n_thread$)) $x47))))
-(let ((@x23078 (mp (and-elim (and-elim @x4039 $x47) $x37) (monotonicity (symm @x23049 (= $x36 $x23089)) $x23052) (not $x23089))))
-(let (($x23034 (not $x23019)))
-(let (($x23037 (not $x23018)))
-(let ((@x23072 (monotonicity (symm (monotonicity @x24449 @x24449 (= $x23018 $x3738)) (= $x3738 $x23018)) (= $x10065 $x23037))))
-(let ((@x23071 (unit-resolution (def-axiom (or (not $x23027) $x23018 $x23034)) (mp (hypothesis $x10065) @x23072 $x23037) (unit-resolution ((_ quant-inst v_b_S_s$ (b_S_ptr$ ?x3678 ?x21715) (b_S_ptr$ ?x3678 ?x21715) b_l_H_public$) (or (not $x12066) $x23027)) @x15761 $x23027) $x23034)))
-(let (($x23069 (b_S_is$ ?x22684 ?x22935)))
-(let ((@x23095 (mp (and-elim @x10087 $x3686) (symm (monotonicity @x24449 @x23038 (= $x23069 $x3686)) (= $x3686 $x23069)) $x23069)))
-(let (($x23086 (b_S_typed$ v_b_S_s$ ?x22684)))
-(let ((@x23099 (mp (and-elim @x10087 $x3687) (symm (monotonicity @x24449 (= $x23086 $x3687)) (= $x3687 $x23086)) $x23086)))
-(let ((@x10097 (and-elim @x10087 $x3685)))
-(let ((@x23104 (trans (monotonicity @x24449 (= (b_S_owner$ v_b_S_s$ ?x22684) ?x3684)) @x10097 (= (b_S_owner$ v_b_S_s$ ?x22684) b_S_me$))))
-(let ((@x23113 (mp (and-elim @x10087 $x3683) (symm (monotonicity @x24449 (= $x22949 $x3683)) (= $x3683 $x22949)) $x22949)))
-(let (($x22936 (b_S_is_n_non_n_primitive$ ?x22935)))
-(let ((@x23118 (mp (and-elim @x10087 $x3691) (symm (monotonicity @x23038 (= $x22936 $x3691)) (= $x3691 $x22936)) $x22936)))
-(let ((@x10104 (and-elim @x10087 $x3699)))
-(let (($x19623 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x3028 (b_S_in_n_domain$ ?v0 ?v1 ?v1)))
-(let (($x1001 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
-(let (($x1106 (b_S_typed$ ?v0 ?v1)))
-(let (($x8534 (not $x1106)))
-(let (($x1098 (b_S_closed$ ?v0 ?v1)))
-(let (($x3231 (not $x1098)))
-(or (not (b_S_full_n_stop$ ?v0)) $x3231 (not (= (b_S_owner$ ?v0 ?v1) b_S_me$)) (not (b_S_is$ ?v1 (b_S_typ$ ?v1))) $x8534 $x1001 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ ?v1))) $x3028))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v1) )))
-))
-(let (($x8148 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x3028 (b_S_in_n_domain$ ?v0 ?v1 ?v1)))
-(let ((?x999 (b_S_typ$ ?v1)))
-(let (($x1042 (b_S_is_n_non_n_primitive$ ?x999)))
-(let (($x1001 (= (b_S_kind_n_of$ ?x999) b_S_kind_n_primitive$)))
-(let (($x1024 (not $x1001)))
-(let (($x1106 (b_S_typed$ ?v0 ?v1)))
-(let (($x1105 (b_S_is$ ?v1 ?x999)))
-(let ((?x1103 (b_S_owner$ ?v0 ?v1)))
-(let (($x1104 (= ?x1103 b_S_me$)))
-(let (($x1098 (b_S_closed$ ?v0 ?v1)))
-(let (($x1172 (b_S_full_n_stop$ ?v0)))
-(let (($x8134 (and $x1172 $x1098 $x1104 $x1105 $x1106 $x1024 $x1042)))
-(let (($x8142 (not $x8134)))
-(or $x8142 $x3028)))))))))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v1) )))
-))
-(let (($x3028 (b_S_in_n_domain$ ?1 ?0 ?0)))
-(let (($x1098 (b_S_closed$ ?1 ?0)))
-(let (($x3231 (not $x1098)))
-(let (($x19618 (or (not (b_S_full_n_stop$ ?1)) $x3231 (not $x1104) (not (b_S_is$ ?0 (b_S_typ$ ?0))) $x8534 $x1001 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ ?0))) $x3028)))
-(let ((?x999 (b_S_typ$ ?0)))
-(let (($x1042 (b_S_is_n_non_n_primitive$ ?x999)))
-(let (($x1105 (b_S_is$ ?0 ?x999)))
-(let (($x1172 (b_S_full_n_stop$ ?1)))
-(let (($x8134 (and $x1172 $x1098 $x1104 $x1105 $x1106 $x1024 $x1042)))
-(let (($x8142 (not $x8134)))
-(let (($x8143 (or $x8142 $x3028)))
-(let (($x19604 (or (not $x1172) $x3231 (not $x1104) (not $x1105) $x8534 $x1001 (not $x1042))))
-(let ((@x19610 (monotonicity (rewrite (= $x8134 (not $x19604))) (= $x8142 (not (not $x19604))))))
-(let ((@x19617 (monotonicity (trans @x19610 (rewrite (= (not (not $x19604)) $x19604)) (= $x8142 $x19604)) (= $x8143 (or $x19604 $x3028)))))
-(let ((@x19625 (quant-intro (trans @x19617 (rewrite (= (or $x19604 $x3028) $x19618)) (= $x8143 $x19618)) (= $x8148 $x19623))))
-(let (($x3031 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x3028 (b_S_in_n_domain$ ?v0 ?v1 ?v1)))
-(let ((?x999 (b_S_typ$ ?v1)))
-(let (($x1042 (b_S_is_n_non_n_primitive$ ?x999)))
-(let (($x1001 (= (b_S_kind_n_of$ ?x999) b_S_kind_n_primitive$)))
-(let (($x1024 (not $x1001)))
-(let (($x1106 (b_S_typed$ ?v0 ?v1)))
-(let (($x1105 (b_S_is$ ?v1 ?x999)))
-(let (($x3024 (and $x1105 (and $x1106 (and $x1024 $x1042)))))
-(let ((?x1103 (b_S_owner$ ?v0 ?v1)))
-(let (($x1104 (= ?x1103 b_S_me$)))
-(let (($x3025 (and $x1104 $x3024)))
-(let (($x1098 (b_S_closed$ ?v0 ?v1)))
-(let (($x3026 (and $x1098 $x3025)))
-(let (($x1172 (b_S_full_n_stop$ ?v0)))
-(let (($x3027 (and $x1172 $x3026)))
-(=> $x3027 $x3028)))))))))))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v1) )))
-))
-(let (($x3024 (and $x1105 (and $x1106 (and $x1024 $x1042)))))
-(let (($x3025 (and $x1104 $x3024)))
-(let (($x3026 (and $x1098 $x3025)))
-(let (($x3027 (and $x1172 $x3026)))
-(let (($x3029 (=> $x3027 $x3028)))
-(let (($x8126 (and $x1098 $x1104 $x1105 $x1106 $x1024 $x1042)))
-(let (($x8118 (and $x1104 $x1105 $x1106 $x1024 $x1042)))
-(let ((@x8112 (rewrite (= (and $x1105 (and $x1106 $x1024 $x1042)) (and $x1105 $x1106 $x1024 $x1042)))))
-(let ((@x8109 (monotonicity (rewrite (= (and $x1106 (and $x1024 $x1042)) (and $x1106 $x1024 $x1042))) (= $x3024 (and $x1105 (and $x1106 $x1024 $x1042))))))
-(let ((@x8117 (monotonicity (trans @x8109 @x8112 (= $x3024 (and $x1105 $x1106 $x1024 $x1042))) (= $x3025 (and $x1104 (and $x1105 $x1106 $x1024 $x1042))))))
-(let ((@x8122 (trans @x8117 (rewrite (= (and $x1104 (and $x1105 $x1106 $x1024 $x1042)) $x8118)) (= $x3025 $x8118))))
-(let ((@x8130 (trans (monotonicity @x8122 (= $x3026 (and $x1098 $x8118))) (rewrite (= (and $x1098 $x8118) $x8126)) (= $x3026 $x8126))))
-(let ((@x8138 (trans (monotonicity @x8130 (= $x3027 (and $x1172 $x8126))) (rewrite (= (and $x1172 $x8126) $x8134)) (= $x3027 $x8134))))
-(let ((@x8147 (trans (monotonicity @x8138 (= $x3029 (=> $x8134 $x3028))) (rewrite (= (=> $x8134 $x3028) $x8143)) (= $x3029 $x8143))))
-(let ((@x15729 (mp~ (mp (asserted $x3031) (quant-intro @x8147 (= $x3031 $x8148)) $x8148) (nnf-pos (refl (~ $x8143 $x8143)) (~ $x8148 $x8148)) $x8148)))
-(let (($x23087 (not $x23086)))
-(let (($x23085 (not $x23069)))
-(let (($x21687 (not $x3699)))
-(let (($x24394 (or (not $x19623) $x21687 $x22973 (not (= (b_S_owner$ v_b_S_s$ ?x22684) b_S_me$)) $x23085 $x23087 $x23089 (not $x22936) $x23019)))
-(let (($x23090 (or $x21687 $x22973 (not (= (b_S_owner$ v_b_S_s$ ?x22684) b_S_me$)) $x23085 $x23087 $x23089 (not $x22936) $x23019)))
-(let ((@x24401 (mp ((_ quant-inst v_b_S_s$ (b_S_ptr$ ?x3678 ?x21715)) (or (not $x19623) $x23090)) (rewrite (= (or (not $x19623) $x23090) $x24394)) $x24394)))
-(let ((@x23120 (unit-resolution @x24401 (mp @x15729 @x19625 $x19623) @x10104 @x23118 @x23113 @x23104 (or $x23085 $x23087 $x23089 $x23019))))
-(let ((@x23328 (mp (lemma (unit-resolution @x23120 @x23099 @x23095 @x23071 @x23078 false) $x3738) (symm (monotonicity @x24449 @x24449 (= $x23018 $x3738)) (= $x3738 $x23018)) $x23018)))
-(let ((@x23329 (unit-resolution (def-axiom (or (not $x23027) $x23037 $x23019)) @x23328 (unit-resolution ((_ quant-inst v_b_S_s$ (b_S_ptr$ ?x3678 ?x21715) (b_S_ptr$ ?x3678 ?x21715) b_l_H_public$) (or (not $x12066) $x23027)) @x15761 $x23027) $x23019)))
-(let (($x19663 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) )(!(let (($x19647 (forall ((?v3 B_S_ptr$) )(!(let (($x3038 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?v0 ?v2)))))
-(let ((?x2289 (b_S_typ$ ?v1)))
-(let (($x3032 (b_S_has_n_volatile_n_owns_n_set$ ?x2289)))
-(or $x3032 (not (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1))) $x3038)))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1)) )))
-))
-(let (($x19654 (or (not (b_S_set_n_in$ ?v1 (b_S_domain$ ?v0 ?v2))) (not (b_S_closed$ ?v0 ?v1)) (not $x19647))))
-(let (($x19655 (not $x19654)))
-(let (($x2979 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
-(let (($x8173 (not $x2979)))
-(or $x8173 $x19655)))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v2) )))
-))
-(let (($x8179 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) )(!(let (($x8156 (forall ((?v3 B_S_ptr$) )(!(let (($x3038 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?v0 ?v2)))))
-(let (($x3035 (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1))))
-(let (($x3036 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?v1))) $x3035)))
-(let (($x8152 (not $x3036)))
-(or $x8152 $x3038))))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1)) )))
-))
-(let (($x1136 (b_S_closed$ ?v0 ?v1)))
-(let (($x2963 (b_S_set_n_in$ ?v1 (b_S_domain$ ?v0 ?v2))))
-(let (($x8165 (and $x2963 $x1136 $x8156)))
-(let (($x2979 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
-(let (($x8173 (not $x2979)))
-(or $x8173 $x8165))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v2) )))
-))
-(let (($x19647 (forall ((?v3 B_S_ptr$) )(!(let (($x3038 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?2 ?0)))))
-(let ((?x2289 (b_S_typ$ ?1)))
-(let (($x3032 (b_S_has_n_volatile_n_owns_n_set$ ?x2289)))
-(or $x3032 (not (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1))) $x3038)))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1)) )))
-))
-(let (($x19654 (or (not (b_S_set_n_in$ ?1 (b_S_domain$ ?2 ?0))) (not (b_S_closed$ ?2 ?1)) (not $x19647))))
-(let (($x19655 (not $x19654)))
-(let (($x2979 (b_S_in_n_domain$ ?2 ?1 ?0)))
-(let (($x8173 (not $x2979)))
-(let (($x8156 (forall ((?v3 B_S_ptr$) )(!(let (($x3038 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?2 ?0)))))
-(let (($x3035 (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1))))
-(let (($x3036 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?1))) $x3035)))
-(let (($x8152 (not $x3036)))
-(or $x8152 $x3038))))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1)) )))
-))
-(let (($x1136 (b_S_closed$ ?2 ?1)))
-(let (($x2963 (b_S_set_n_in$ ?1 (b_S_domain$ ?2 ?0))))
-(let (($x8165 (and $x2963 $x1136 $x8156)))
-(let (($x8174 (or $x8173 $x8165)))
-(let (($x3038 (b_S_set_n_in2$ ?0 (b_S_ver_n_domain$ (b_S_read_n_version$ ?3 ?1)))))
-(let ((?x2289 (b_S_typ$ ?2)))
-(let (($x3032 (b_S_has_n_volatile_n_owns_n_set$ ?x2289)))
-(let (($x19642 (or $x3032 (not (b_S_set_n_in$ ?0 (b_S_owns$ ?3 ?2))) $x3038)))
-(let (($x3035 (b_S_set_n_in$ ?0 (b_S_owns$ ?3 ?2))))
-(let (($x3036 (and (not $x3032) $x3035)))
-(let (($x8152 (not $x3036)))
-(let (($x8153 (or $x8152 $x3038)))
-(let ((@x19636 (rewrite (= (not (not (or $x3032 (not $x3035)))) (or $x3032 (not $x3035))))))
-(let ((@x19634 (monotonicity (rewrite (= $x3036 (not (or $x3032 (not $x3035))))) (= $x8152 (not (not (or $x3032 (not $x3035))))))))
-(let ((@x19641 (monotonicity (trans @x19634 @x19636 (= $x8152 (or $x3032 (not $x3035)))) (= $x8153 (or (or $x3032 (not $x3035)) $x3038)))))
-(let ((@x19646 (trans @x19641 (rewrite (= (or (or $x3032 (not $x3035)) $x3038) $x19642)) (= $x8153 $x19642))))
-(let ((@x19652 (monotonicity (quant-intro @x19646 (= $x8156 $x19647)) (= $x8165 (and $x2963 $x1136 $x19647)))))
-(let ((@x19659 (trans @x19652 (rewrite (= (and $x2963 $x1136 $x19647) $x19655)) (= $x8165 $x19655))))
-(let ((@x19665 (quant-intro (monotonicity @x19659 (= $x8174 (or $x8173 $x19655))) (= $x8179 $x19663))))
-(let ((@x15741 (monotonicity (refl (~ $x2963 $x2963)) (refl (~ $x1136 $x1136)) (nnf-pos (refl (~ $x8153 $x8153)) (~ $x8156 $x8156)) (~ $x8165 $x8165))))
-(let ((@x15745 (nnf-pos (monotonicity (refl (~ $x8173 $x8173)) @x15741 (~ $x8174 $x8174)) (~ $x8179 $x8179))))
-(let (($x3046 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) )(!(let (($x3041 (forall ((?v3 B_S_ptr$) )(!(let (($x3038 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?v0 ?v2)))))
-(let (($x3035 (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1))))
-(let (($x3036 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?v1))) $x3035)))
-(=> $x3036 $x3038)))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1)) )))
-))
-(let (($x1136 (b_S_closed$ ?v0 ?v1)))
-(let (($x2963 (b_S_set_n_in$ ?v1 (b_S_domain$ ?v0 ?v2))))
-(let (($x3043 (and $x2963 (and $x1136 $x3041))))
-(let (($x2979 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
-(=> $x2979 $x3043)))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v2) )))
-))
-(let (($x3041 (forall ((?v3 B_S_ptr$) )(!(let (($x3038 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?2 ?0)))))
-(let (($x3035 (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1))))
-(let (($x3036 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?1))) $x3035)))
-(=> $x3036 $x3038)))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1)) )))
-))
-(let (($x3043 (and $x2963 (and $x1136 $x3041))))
-(let (($x3044 (=> $x2979 $x3043)))
-(let ((@x8161 (monotonicity (quant-intro (rewrite (= (=> $x3036 $x3038) $x8153)) (= $x3041 $x8156)) (= (and $x1136 $x3041) (and $x1136 $x8156)))))
-(let ((@x8169 (trans (monotonicity @x8161 (= $x3043 (and $x2963 (and $x1136 $x8156)))) (rewrite (= (and $x2963 (and $x1136 $x8156)) $x8165)) (= $x3043 $x8165))))
-(let ((@x8178 (trans (monotonicity @x8169 (= $x3044 (=> $x2979 $x8165))) (rewrite (= (=> $x2979 $x8165) $x8174)) (= $x3044 $x8174))))
-(let ((@x15746 (mp~ (mp (asserted $x3046) (quant-intro @x8178 (= $x3046 $x8179)) $x8179) @x15745 $x8179)))
-(let ((@x24384 (rewrite (= (or (not $x19663) (or $x23034 $x23066)) (or (not $x19663) $x23034 $x23066)))))
-(let ((@x24402 (mp ((_ quant-inst v_b_S_s$ (b_S_ptr$ ?x3678 ?x21715) (b_S_ptr$ ?x3678 ?x21715)) (or (not $x19663) (or $x23034 $x23066))) @x24384 (or (not $x19663) $x23034 $x23066))))
-(let ((@x23335 (unit-resolution (unit-resolution @x24402 (mp @x15746 @x19665 $x19663) (or $x23034 $x23066)) @x23329 $x23066)))
-(let ((@x23336 (unit-resolution (def-axiom (or (or (not $x23045) $x22973 (not $x23063)) $x23045)) @x23335 $x23045)))
-(let (($x19385 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ptr$) (?v3 Int) (?v4 Int) (?v5 B_S_ctype$) )(!(let ((?x2903 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)))
-(let ((?x2429 (b_S_typemap$ ?v0)))
-(let (($x19373 (or (not (b_S_typed$ ?v0 ?x2903)) (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x2429 ?x2903)))))
-(let (($x19374 (not $x19373)))
-(let (($x11257 (>= (+ ?v4 (* (- 1) ?v3)) 0)))
-(let (($x2898 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2))))
-(or (not (b_S_full_n_stop$ ?v0)) (not (b_S_is_n_primitive$ ?v5)) (not $x2898) (not (>= ?v4 0)) $x11257 $x19374))))))) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) ) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_owner$ ?v0 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) )))
-))
-(let (($x12034 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ptr$) (?v3 Int) (?v4 Int) (?v5 B_S_ctype$) )(!(let ((?x2903 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)))
-(let ((?x2429 (b_S_typemap$ ?v0)))
-(let (($x2915 (and (b_S_typed$ ?v0 ?x2903) (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x2429 ?x2903))))))
-(let (($x10181 (>= ?v4 0)))
-(let (($x2898 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2))))
-(let (($x1179 (b_S_is_n_primitive$ ?v5)))
-(let (($x2894 (b_S_full_n_stop$ ?v0)))
-(let (($x12018 (and $x2894 $x1179 $x2898 $x10181 (not (>= (+ ?v4 (* (- 1) ?v3)) 0)))))
-(let (($x12021 (not $x12018)))
-(or $x12021 $x2915)))))))))) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) ) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_owner$ ?v0 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) )))
-))
-(let ((?x2903 (b_S_idx$ (b_S_ptr$ ?0 ?4) ?1 ?0)))
-(let ((?x2429 (b_S_typemap$ ?5)))
-(let (($x19373 (or (not (b_S_typed$ ?5 ?x2903)) (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x2429 ?x2903)))))
-(let (($x19374 (not $x19373)))
-(let (($x11257 (>= (+ ?1 (* (- 1) ?2)) 0)))
-(let (($x2898 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?0 ?2) ?4) (b_S_domain$ ?5 ?3))))
-(let (($x19380 (or (not (b_S_full_n_stop$ ?5)) (not $x1179) (not $x2898) (not (>= ?1 0)) $x11257 $x19374)))
-(let (($x2915 (and (b_S_typed$ ?5 ?x2903) (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x2429 ?x2903))))))
-(let (($x10181 (>= ?1 0)))
-(let (($x2894 (b_S_full_n_stop$ ?5)))
-(let (($x12018 (and $x2894 $x1179 $x2898 $x10181 (not $x11257))))
-(let (($x12021 (not $x12018)))
-(let (($x12031 (or $x12021 $x2915)))
-(let (($x19381 (= (or (or (not $x2894) (not $x1179) (not $x2898) (not $x10181) $x11257) $x19374) $x19380)))
-(let (($x19378 (= $x12031 (or (or (not $x2894) (not $x1179) (not $x2898) (not $x10181) $x11257) $x19374))))
-(let (($x19349 (or (not $x2894) (not $x1179) (not $x2898) (not $x10181) $x11257)))
-(let ((@x19355 (monotonicity (rewrite (= $x12018 (not $x19349))) (= $x12021 (not (not $x19349))))))
-(let ((@x19379 (monotonicity (trans @x19355 (rewrite (= (not (not $x19349)) $x19349)) (= $x12021 $x19349)) (rewrite (= $x2915 $x19374)) $x19378)))
-(let ((@x19387 (quant-intro (trans @x19379 (rewrite $x19381) (= $x12031 $x19380)) (= $x12034 $x19385))))
-(let (($x7948 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ptr$) (?v3 Int) (?v4 Int) (?v5 B_S_ctype$) )(!(let ((?x2903 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)))
-(let ((?x2429 (b_S_typemap$ ?v0)))
-(let (($x2915 (and (b_S_typed$ ?v0 ?x2903) (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x2429 ?x2903))))))
-(let (($x1751 (<= ?v3 ?v4)))
-(let (($x7247 (not $x1751)))
-(let (($x1330 (<= 0 ?v4)))
-(let (($x2898 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2))))
-(let (($x1179 (b_S_is_n_primitive$ ?v5)))
-(let (($x2894 (b_S_full_n_stop$ ?v0)))
-(let (($x7922 (and $x2894 $x1179 $x2898 $x1330 $x7247)))
-(or (not $x7922) $x2915))))))))))) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) ) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_owner$ ?v0 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) )))
-))
-(let (($x7943 (or (not (and $x2894 $x1179 $x2898 (<= 0 ?1) (not (<= ?2 ?1)))) $x2915)))
-(let (($x12022 (= (not (and $x2894 $x1179 $x2898 (<= 0 ?1) (not (<= ?2 ?1)))) $x12021)))
-(let (($x1751 (<= ?2 ?1)))
-(let (($x7247 (not $x1751)))
-(let (($x1330 (<= 0 ?1)))
-(let (($x7922 (and $x2894 $x1179 $x2898 $x1330 $x7247)))
-(let ((@x12020 (monotonicity (rewrite (= $x1330 $x10181)) (monotonicity (rewrite (= $x1751 $x11257)) (= $x7247 (not $x11257))) (= $x7922 $x12018))))
-(let ((@x12036 (quant-intro (monotonicity (monotonicity @x12020 $x12022) (= $x7943 $x12031)) (= $x7948 $x12034))))
-(let (($x2920 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ptr$) (?v3 Int) (?v4 Int) (?v5 B_S_ctype$) )(!(let ((?x2903 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)))
-(let ((?x2429 (b_S_typemap$ ?v0)))
-(let (($x2915 (and (b_S_typed$ ?v0 ?x2903) (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x2429 ?x2903))))))
-(let (($x1330 (<= 0 ?v4)))
-(let (($x2333 (and $x1330 (< ?v4 ?v3))))
-(let (($x2898 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2))))
-(let (($x2899 (and $x2898 $x2333)))
-(let (($x1179 (b_S_is_n_primitive$ ?v5)))
-(let (($x2900 (and $x1179 $x2899)))
-(let (($x2894 (b_S_full_n_stop$ ?v0)))
-(let (($x2901 (and $x2894 $x2900)))
-(=> $x2901 $x2915)))))))))))) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) ) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_owner$ ?v0 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) )))
-))
-(let (($x2333 (and $x1330 (< ?1 ?2))))
-(let (($x2899 (and $x2898 $x2333)))
-(let (($x2900 (and $x1179 $x2899)))
-(let (($x2901 (and $x2894 $x2900)))
-(let (($x2916 (=> $x2901 $x2915)))
-(let ((@x7916 (rewrite (= (and $x1179 (and $x2898 $x1330 $x7247)) (and $x1179 $x2898 $x1330 $x7247)))))
-(let ((@x7252 (monotonicity (rewrite (= $x1330 $x1330)) (rewrite (= (< ?1 ?2) $x7247)) (= $x2333 (and $x1330 $x7247)))))
-(let ((@x7910 (trans (monotonicity @x7252 (= $x2899 (and $x2898 (and $x1330 $x7247)))) (rewrite (= (and $x2898 (and $x1330 $x7247)) (and $x2898 $x1330 $x7247))) (= $x2899 (and $x2898 $x1330 $x7247)))))
-(let ((@x7918 (trans (monotonicity @x7910 (= $x2900 (and $x1179 (and $x2898 $x1330 $x7247)))) @x7916 (= $x2900 (and $x1179 $x2898 $x1330 $x7247)))))
-(let ((@x7926 (trans (monotonicity @x7918 (= $x2901 (and $x2894 (and $x1179 $x2898 $x1330 $x7247)))) (rewrite (= (and $x2894 (and $x1179 $x2898 $x1330 $x7247)) $x7922)) (= $x2901 $x7922))))
-(let ((@x7947 (trans (monotonicity @x7926 (= $x2916 (=> $x7922 $x2915))) (rewrite (= (=> $x7922 $x2915) $x7943)) (= $x2916 $x7943))))
-(let ((@x12037 (mp (mp (asserted $x2920) (quant-intro @x7947 (= $x2920 $x7948)) $x7948) @x12036 $x12034)))
-(let ((@x19388 (mp (mp~ @x12037 (nnf-pos (refl (~ $x12031 $x12031)) (~ $x12034 $x12034)) $x12034) @x19387 $x19385)))
-(let (($x23298 (not $x23297)))
-(let (($x22190 (not $x3529)))
-(let (($x23330 (not $x19385)))
-(let (($x23309 (or $x23330 $x21687 $x22190 $x23298 $x8666 $x23305)))
-(let (($x23302 (>= (+ 0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x23300 (not (>= 0 0))))
-(let (($x23306 (or $x21687 $x22190 $x23298 $x23300 $x23302 $x23305)))
-(let (($x23310 (or $x23330 $x23306)))
-(let (($x23348 (or $x21687 $x22190 $x23298 $x8666 $x23305)))
-(let ((@x23277 (rewrite (= (+ 0 (* (- 1) v_b_P_H_len$)) (* (- 1) v_b_P_H_len$)))))
-(let ((@x23344 (trans (monotonicity @x23277 (= $x23302 (>= (* (- 1) v_b_P_H_len$) 0))) (rewrite (= (>= (* (- 1) v_b_P_H_len$) 0) $x8666)) (= $x23302 $x8666))))
-(let ((@x23275 (trans (monotonicity (rewrite (= (>= 0 0) true)) (= $x23300 $x3805)) (rewrite (= $x3805 false)) (= $x23300 false))))
-(let ((@x23347 (monotonicity @x23275 @x23344 (= $x23306 (or $x21687 $x22190 $x23298 false $x8666 $x23305)))))
-(let ((@x23308 (trans @x23347 (rewrite (= (or $x21687 $x22190 $x23298 false $x8666 $x23305) $x23348)) (= $x23306 $x23348))))
-(let ((@x23318 (trans (monotonicity @x23308 (= $x23310 (or $x23330 $x23348))) (rewrite (= (or $x23330 $x23348) $x23309)) (= $x23310 $x23309))))
-(let ((@x23396 (unit-resolution (mp ((_ quant-inst v_b_S_s$ v_b_P_H_arr$ (b_S_ptr$ ?x3678 ?x21715) v_b_P_H_len$ 0 b_T_T_u1$) $x23310) @x23318 $x23309) @x19388 @x5093 @x10095 @x10104 (mp @x23336 @x23394 $x23297) (hypothesis $x23304) false)))
-(let ((@x23503 (mp (unit-resolution (def-axiom (or $x23304 $x23260)) (lemma @x23396 $x23305) $x23260) @x23522 $x23358)))
-(let (($x23368 (= (b_S_owner$ v_b_S_s$ (b_S_ts_n_emb$ ?x23356)) b_S_me$)))
-(let (($x23370 (or $x23368 (b_S_in_n_wrapped_n_domain$ v_b_S_s$ (b_S_ts_n_emb$ ?x23356)))))
-(let (($x23366 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?x23356))) b_S_kind_n_primitive$)))
-(let (($x23363 (not $x23362)))
-(let (($x23355 (not $x23354)))
-(let (($x23372 (or $x23355 $x23363 $x23366 (not $x23370))))
-(let (($x23377 (or (= (b_S_owner$ v_b_S_s$ ?x23206) b_S_me$) (b_S_in_n_wrapped_n_domain$ v_b_S_s$ ?x23206))))
-(let (($x23373 (not $x23372)))
-(let (($x23382 (not (or $x23373 (not (or $x23354 (not $x23377)))))))
-(let (($x23383 (or (not (b_S_typed$ v_b_S_s$ ?x23206)) $x23382)))
-(let (($x23349 (b_S_thread_n_local$ v_b_S_s$ ?x23206)))
-(let (($x23385 (= $x23349 (not $x23383))))
-(let ((@x23535 (monotonicity (symm (monotonicity @x23922 (= $x23349 $x3743)) (= $x3743 $x23349)) (= $x16251 (not $x23349)))))
-(let ((@x23541 (unit-resolution (def-axiom (or (not $x23385) $x23349 $x23383)) (mp (hypothesis $x16251) @x23535 (not $x23349)) (unit-resolution ((_ quant-inst v_b_S_s$ (b_S_ptr$ b_T_T_u1$ ?x23186)) (or (not $x19790) $x23385)) @x19793 $x23385) $x23383)))
-(let (($x23350 (b_S_typed$ v_b_S_s$ ?x23206)))
-(let ((@x23928 (mp (unit-resolution (def-axiom (or $x23304 $x3741)) (lemma @x23396 $x23305) $x3741) (symm (monotonicity @x23922 (= $x23350 $x3741)) (= $x3741 $x23350)) $x23350)))
-(let ((@x23600 (unit-resolution (def-axiom (or (not $x23383) (not $x23350) $x23382)) @x23928 @x23541 $x23382)))
-(let ((@x23583 (unit-resolution (def-axiom (or (or $x23373 (not (or $x23354 (not $x23377)))) $x23372)) @x23600 $x23372)))
-(let ((?x24269 (b_S_ref$ ?x22684)))
-(let ((?x24283 (b_S_ptr$ b_T_T_u1$ ?x24269)))
-(let ((?x24260 (b_S_idx$ ?x22684 0 b_T_T_u1$)))
-(let (($x24286 (= ?x24260 ?x24283)))
-(let (($x24289 (not $x24286)))
-(let (($x24292 (or (not (b_S_extent_n_hint$ ?x24260 ?x22684)) $x24289)))
-(let (($x24232 (not $x24292)))
-(let (($x24310 (or $x23217 $x24232)))
-(let (($x24274 (or (not (b_S_extent_n_hint$ ?x24260 ?x22684)) (not (= ?x24260 (b_S_ptr$ b_T_T_u1$ (+ ?x24269 (* 0 ?x3652))))))))
-(let (($x24290 (= (not (= ?x24260 (b_S_ptr$ b_T_T_u1$ (+ ?x24269 (* 0 ?x3652))))) $x24289)))
-(let ((@x24278 (monotonicity (rewrite (= (* 0 ?x3652) 0)) (= (+ ?x24269 (* 0 ?x3652)) (+ ?x24269 0)))))
-(let ((@x24282 (trans @x24278 (rewrite (= (+ ?x24269 0) ?x24269)) (= (+ ?x24269 (* 0 ?x3652)) ?x24269))))
-(let ((@x24285 (monotonicity @x24282 (= (b_S_ptr$ b_T_T_u1$ (+ ?x24269 (* 0 ?x3652))) ?x24283))))
-(let ((@x24288 (monotonicity @x24285 (= (= ?x24260 (b_S_ptr$ b_T_T_u1$ (+ ?x24269 (* 0 ?x3652)))) $x24286))))
-(let ((@x24309 (monotonicity (monotonicity (monotonicity @x24288 $x24290) (= $x24274 $x24292)) (= (not $x24274) $x24232))))
-(let ((@x24303 (trans (monotonicity @x24309 (= (or $x23217 (not $x24274)) $x24310)) (rewrite (= $x24310 $x24310)) (= (or $x23217 (not $x24274)) $x24310))))
-(let ((@x24501 (unit-resolution (mp ((_ quant-inst (b_S_ptr$ ?x3678 ?x21715) 0 b_T_T_u1$) (or $x23217 (not $x24274))) @x24303 $x24310) @x18901 (hypothesis $x24292) false)))
-(let (($x24111 (= (b_S_ts_n_emb$ (b_S_select_o_tm$ ?x3874 (b_S_idx$ ?x23296 0 b_T_T_u1$))) ?x23296)))
-(let ((?x24137 (b_S_idx$ ?x23296 0 b_T_T_u1$)))
-(let ((?x24145 (b_S_select_o_tm$ ?x3874 ?x24137)))
-(let (($x24127 (or (not $x24111) (b_S_ts_n_is_n_volatile$ ?x24145) (not (b_S_ts_n_is_n_array_n_elt$ ?x24145)) (not (b_S_typed$ v_b_S_s$ ?x24137)))))
-(let (($x24130 (not $x24127)))
-(let (($x24131 (b_S_typed$ v_b_S_s$ ?x23296)))
-(let ((@x24253 (mp (and-elim @x10087 $x3687) (symm (monotonicity @x23339 (= $x24131 $x3687)) (= $x3687 $x24131)) $x24131)))
-(let (($x18682 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ctype$) (?v3 Int) (?v4 Int) )(!(let (($x2378 (b_S_typed$ ?v0 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
-(let ((?x2370 (b_S_typemap$ ?v0)))
-(let ((?x2372 (b_S_select_o_tm$ ?x2370 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
-(let (($x2377 (b_S_ts_n_is_n_array_n_elt$ ?x2372)))
-(let (($x18670 (or (not (= (b_S_ts_n_emb$ ?x2372) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1))) (b_S_ts_n_is_n_volatile$ ?x2372) (not $x2377) (not $x2378))))
-(let (($x18671 (not $x18670)))
-(let (($x11071 (>= (+ ?v4 (* (- 1) ?v3)) 0)))
-(let (($x10138 (>= ?v4 0)))
-(let (($x10556 (not $x10138)))
-(or (not (b_S_typed$ ?v0 (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1))) $x10556 $x11071 $x18671)))))))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) )))
-))
-(let (($x11697 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ctype$) (?v3 Int) (?v4 Int) )(!(let (($x2378 (b_S_typed$ ?v0 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
-(let ((?x2370 (b_S_typemap$ ?v0)))
-(let ((?x2372 (b_S_select_o_tm$ ?x2370 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
-(let (($x2377 (b_S_ts_n_is_n_array_n_elt$ ?x2372)))
-(let (($x2376 (not (b_S_ts_n_is_n_volatile$ ?x2372))))
-(let ((?x2367 (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1)))
-(let (($x2374 (= (b_S_ts_n_emb$ ?x2372) ?x2367)))
-(let (($x7338 (and $x2374 $x2376 $x2377 $x2378)))
-(let (($x10138 (>= ?v4 0)))
-(let (($x2368 (b_S_typed$ ?v0 ?x2367)))
-(let (($x11688 (and $x2368 $x10138 (not (>= (+ ?v4 (* (- 1) ?v3)) 0)))))
-(let (($x11691 (not $x11688)))
-(or $x11691 $x7338))))))))))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) )))
-))
-(let (($x2378 (b_S_typed$ ?4 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?2 ?1) ?3) ?0 ?2))))
-(let ((?x2370 (b_S_typemap$ ?4)))
-(let ((?x2372 (b_S_select_o_tm$ ?x2370 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?2 ?1) ?3) ?0 ?2))))
-(let (($x2377 (b_S_ts_n_is_n_array_n_elt$ ?x2372)))
-(let (($x18670 (or (not (= (b_S_ts_n_emb$ ?x2372) (b_S_ptr$ (b_S_array$ ?2 ?1) ?3))) (b_S_ts_n_is_n_volatile$ ?x2372) (not $x2377) (not $x2378))))
-(let (($x18671 (not $x18670)))
-(let (($x11071 (>= (+ ?0 (* (- 1) ?1)) 0)))
-(let (($x10138 (>= ?0 0)))
-(let (($x10556 (not $x10138)))
-(let (($x18677 (or (not (b_S_typed$ ?4 (b_S_ptr$ (b_S_array$ ?2 ?1) ?3))) $x10556 $x11071 $x18671)))
-(let (($x2376 (not (b_S_ts_n_is_n_volatile$ ?x2372))))
-(let ((?x2367 (b_S_ptr$ (b_S_array$ ?2 ?1) ?3)))
-(let (($x2374 (= (b_S_ts_n_emb$ ?x2372) ?x2367)))
-(let (($x7338 (and $x2374 $x2376 $x2377 $x2378)))
-(let (($x2368 (b_S_typed$ ?4 ?x2367)))
-(let (($x11688 (and $x2368 $x10138 (not $x11071))))
-(let (($x11691 (not $x11688)))
-(let (($x11694 (or $x11691 $x7338)))
-(let (($x18656 (or (not $x2368) $x10556 $x11071)))
-(let ((@x18662 (monotonicity (rewrite (= $x11688 (not $x18656))) (= $x11691 (not (not $x18656))))))
-(let ((@x18676 (monotonicity (trans @x18662 (rewrite (= (not (not $x18656)) $x18656)) (= $x11691 $x18656)) (rewrite (= $x7338 $x18671)) (= $x11694 (or $x18656 $x18671)))))
-(let ((@x18684 (quant-intro (trans @x18676 (rewrite (= (or $x18656 $x18671) $x18677)) (= $x11694 $x18677)) (= $x11697 $x18682))))
-(let (($x7352 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ctype$) (?v3 Int) (?v4 Int) )(!(let (($x2378 (b_S_typed$ ?v0 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
-(let ((?x2370 (b_S_typemap$ ?v0)))
-(let ((?x2372 (b_S_select_o_tm$ ?x2370 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
-(let (($x2377 (b_S_ts_n_is_n_array_n_elt$ ?x2372)))
-(let (($x2376 (not (b_S_ts_n_is_n_volatile$ ?x2372))))
-(let ((?x2367 (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1)))
-(let (($x2374 (= (b_S_ts_n_emb$ ?x2372) ?x2367)))
-(let (($x7338 (and $x2374 $x2376 $x2377 $x2378)))
-(let (($x1660 (<= ?v3 ?v4)))
-(let (($x7169 (not $x1660)))
-(let (($x1212 (<= 0 ?v4)))
-(let (($x2368 (b_S_typed$ ?v0 ?x2367)))
-(let (($x7327 (and $x2368 $x1212 $x7169)))
-(or (not $x7327) $x7338)))))))))))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) )))
-))
-(let ((@x11568 (monotonicity (rewrite (= (<= ?1 ?0) $x11071)) (= (not (<= ?1 ?0)) (not $x11071)))))
-(let ((@x10140 (rewrite (= $x1212 $x10138))))
-(let ((@x11690 (monotonicity @x10140 @x11568 (= (and $x2368 $x1212 (not (<= ?1 ?0))) $x11688))))
-(let ((@x11693 (monotonicity @x11690 (= (not (and $x2368 $x1212 (not (<= ?1 ?0)))) $x11691))))
-(let ((@x11696 (monotonicity @x11693 (= (or (not (and $x2368 $x1212 (not (<= ?1 ?0)))) $x7338) $x11694))))
-(let (($x2390 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ctype$) (?v3 Int) (?v4 Int) )(!(let (($x2378 (b_S_typed$ ?v0 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
-(let ((?x2370 (b_S_typemap$ ?v0)))
-(let ((?x2372 (b_S_select_o_tm$ ?x2370 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
-(let (($x2377 (b_S_ts_n_is_n_array_n_elt$ ?x2372)))
-(let (($x2376 (not (b_S_ts_n_is_n_volatile$ ?x2372))))
-(let ((?x2367 (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1)))
-(let (($x2374 (= (b_S_ts_n_emb$ ?x2372) ?x2367)))
-(let (($x2381 (and $x2374 (and $x2376 (and $x2377 $x2378)))))
-(let (($x1212 (<= 0 ?v4)))
-(let (($x2271 (and $x1212 (< ?v4 ?v3))))
-(let (($x2368 (b_S_typed$ ?v0 ?x2367)))
-(let (($x2369 (and $x2368 $x2271)))
-(=> $x2369 $x2381))))))))))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) )))
-))
-(let (($x7347 (or (not (and $x2368 $x1212 (not (<= ?1 ?0)))) $x7338)))
-(let (($x2381 (and $x2374 (and $x2376 (and $x2377 $x2378)))))
-(let (($x2271 (and $x1212 (< ?0 ?1))))
-(let (($x2369 (and $x2368 $x2271)))
-(let (($x2382 (=> $x2369 $x2381)))
-(let ((@x7337 (monotonicity (rewrite (= (and $x2376 (and $x2377 $x2378)) (and $x2376 $x2377 $x2378))) (= $x2381 (and $x2374 (and $x2376 $x2377 $x2378))))))
-(let ((@x7342 (trans @x7337 (rewrite (= (and $x2374 (and $x2376 $x2377 $x2378)) $x7338)) (= $x2381 $x7338))))
-(let (($x1660 (<= ?1 ?0)))
-(let (($x7169 (not $x1660)))
-(let (($x7327 (and $x2368 $x1212 $x7169)))
-(let ((@x7174 (monotonicity @x5396 (rewrite (= (< ?0 ?1) $x7169)) (= $x2271 (and $x1212 $x7169)))))
-(let ((@x7331 (trans (monotonicity @x7174 (= $x2369 (and $x2368 (and $x1212 $x7169)))) (rewrite (= (and $x2368 (and $x1212 $x7169)) $x7327)) (= $x2369 $x7327))))
-(let ((@x7351 (trans (monotonicity @x7331 @x7342 (= $x2382 (=> $x7327 $x7338))) (rewrite (= (=> $x7327 $x7338) $x7347)) (= $x2382 $x7347))))
-(let ((@x11700 (mp (mp (asserted $x2390) (quant-intro @x7351 (= $x2390 $x7352)) $x7352) (quant-intro @x11696 (= $x7352 $x11697)) $x11697)))
-(let ((@x18685 (mp (mp~ @x11700 (nnf-pos (refl (~ $x11694 $x11694)) (~ $x11697 $x11697)) $x11697) @x18684 $x18682)))
-(let (($x24152 (not $x24131)))
-(let (($x24161 (not $x18682)))
-(let (($x24167 (or $x24161 $x24152 $x8666 $x24130)))
-(let (($x24132 (or $x24152 $x23300 $x23302 $x24130)))
-(let (($x24168 (or $x24161 $x24132)))
-(let ((@x24160 (trans (monotonicity @x23275 @x23344 (= $x24132 (or $x24152 false $x8666 $x24130))) (rewrite (= (or $x24152 false $x8666 $x24130) (or $x24152 $x8666 $x24130))) (= $x24132 (or $x24152 $x8666 $x24130)))))
-(let ((@x24169 (trans (monotonicity @x24160 (= $x24168 (or $x24161 (or $x24152 $x8666 $x24130)))) (rewrite (= (or $x24161 (or $x24152 $x8666 $x24130)) $x24167)) (= $x24168 $x24167))))
-(let ((@x24243 (unit-resolution (mp ((_ quant-inst v_b_S_s$ v_b_P_H_arr$ b_T_T_u1$ v_b_P_H_len$ 0) $x24168) @x24169 $x24167) @x18685 @x10095 (lemma (unit-resolution (hypothesis $x24152) @x24253 false) $x24131) (hypothesis $x24127) false)))
-(let ((@x24327 (unit-resolution ((_ quant-inst (b_S_array$ b_T_T_u1$ v_b_P_H_len$) (b_S_ref$ ?x3680)) (or (not $x20968) (= ?x21715 ?x3681))) @x20973 (= ?x21715 ?x3681))))
-(let ((@x24335 (trans (trans (monotonicity @x24449 (= ?x24269 ?x21715)) @x24327 (= ?x24269 ?x3681)) @x23283 (= ?x24269 v_b_P_H_arr$))))
-(let ((@x24339 (trans @x23339 (unit-resolution @x22701 @x16076 (and-elim @x10087 $x3686) $x22691) (= ?x23296 ?x22684))))
-(let ((@x24454 (trans (monotonicity @x24339 (= ?x24137 ?x24260)) (hypothesis $x24286) (= ?x24137 ?x24283))))
-(let ((@x24456 (trans (trans @x24454 (monotonicity @x24335 (= ?x24283 ?x3680)) (= ?x24137 ?x3680)) @x24358 (= ?x24137 ?x23203))))
-(let ((@x24458 (monotonicity (trans @x24456 (symm @x23269 (= ?x23203 ?x3739)) (= ?x24137 ?x3739)) (= ?x24145 ?x23179))))
-(let ((@x24492 (monotonicity (trans @x24072 (symm @x24458 (= ?x23179 ?x24145)) (= ?x23356 ?x24145)) (= (b_S_ts_n_emb$ ?x23356) (b_S_ts_n_emb$ ?x24145)))))
-(let ((@x24493 (trans @x24492 (unit-resolution (def-axiom (or $x24127 $x24111)) (lemma @x24243 $x24130) $x24111) (= (b_S_ts_n_emb$ ?x23356) ?x23296))))
-(let ((@x24496 (monotonicity (trans @x24493 @x23339 (= (b_S_ts_n_emb$ ?x23356) ?x3682)) (= (b_S_owner$ v_b_S_s$ (b_S_ts_n_emb$ ?x23356)) ?x3684))))
-(let ((@x24497 (unit-resolution (hypothesis (not $x23368)) (trans @x24496 @x10097 $x23368) false)))
-(let ((@x23585 (unit-resolution (lemma @x24497 (or $x24289 $x23368)) (unit-resolution (def-axiom (or $x24292 $x24286)) (lemma @x24501 $x24232) $x24286) $x23368)))
-(let (($x23511 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?x23179))) b_S_kind_n_primitive$)))
-(let (($x23504 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?x23179))) (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?x23356))))))
-(let ((@x23496 (monotonicity (symm @x24072 (= ?x23179 ?x23356)) (= (b_S_ts_n_emb$ ?x23179) (b_S_ts_n_emb$ ?x23356)))))
-(let ((@x23773 (monotonicity @x23496 (= (b_S_typ$ (b_S_ts_n_emb$ ?x23179)) (b_S_typ$ (b_S_ts_n_emb$ ?x23356))))))
-(let (($x23514 (or $x23511 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?x23179)))))))
-(let (($x19952 (forall ((?v0 B_S_type_n_state$) )(!(let (($x3400 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?v0))) b_S_kind_n_primitive$)))
-(let (($x19948 (or $x3400 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?v0)))))))
-(not $x19948))) :pattern ( (b_S_ts_n_emb$ ?v0) )))
-))
-(let (($x3405 (forall ((?v0 B_S_type_n_state$) )(!(let (($x3400 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?v0))) b_S_kind_n_primitive$)))
-(and (not $x3400) (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?v0))))) :pattern ( (b_S_ts_n_emb$ ?v0) )))
-))
-(let (($x3400 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?0))) b_S_kind_n_primitive$)))
-(let (($x19948 (or $x3400 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?0)))))))
-(let (($x3403 (and (not $x3400) (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?0))))))
-(let ((@x16056 (mp~ (asserted $x3405) (nnf-pos (refl (~ $x3403 $x3403)) (~ $x3405 $x3405)) $x3405)))
-(let ((@x19955 (mp @x16056 (quant-intro (rewrite (= $x3403 (not $x19948))) (= $x3405 $x19952)) $x19952)))
-(let ((@x23763 (unit-resolution ((_ quant-inst (b_S_select_o_tm$ ?x3874 ?x3739)) (or (not $x19952) (not $x23514))) @x19955 (not $x23514))))
-(let ((@x23521 (unit-resolution (unit-resolution (def-axiom (or $x23514 (not $x23511))) @x23763 (not $x23511)) (trans (monotonicity @x23773 $x23504) (hypothesis $x23366) $x23511) false)))
-(let ((@x23523 (unit-resolution (def-axiom (or $x23373 $x23355 $x23363 $x23366 (not $x23370))) (lemma @x23521 (not $x23366)) (unit-resolution (def-axiom (or $x23370 (not $x23368))) @x23585 $x23370) (or $x23373 $x23355 $x23363))))
-(let ((@x23543 (unit-resolution @x23523 @x23583 (unit-resolution (def-axiom (or $x23362 $x23357)) @x23503 $x23362) @x23574 false)))
-(let (($x21247 (or $x16242 $x16251 $x21244)))
-(let (($x21250 (not $x21247)))
-(let (($x21253 (or $x16242 $x16245 $x21250)))
-(let (($x21256 (not $x21253)))
-(let (($x21259 (or $x16242 $x16245 $x21256)))
-(let (($x21262 (not $x21259)))
-(let (($x21265 (or $x10065 $x21262)))
-(let (($x21268 (not $x21265)))
-(let (($x20335 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3840 (= ?x3765 v_b_S_result_G_0$)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12631 (not $x3840))))))))))
-))
-(let (($x20320 (forall ((?v0 Int) )(let ((?x12644 (* (- 1) v_b_S_result_G_0$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12646 (<= (+ ?x3765 ?x12644) 0)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12631 $x12646))))))))))
-))
-(let (($x20344 (not (or (not $x20320) (not $x20335)))))
-(let (($x20349 (or $x20298 $x20344)))
-(let (($x20360 (or $x12456 $x20190 $x20219 (not $x3818) (not $x3820) (not $x3822) $x20358 (not $x20349))))
-(let (($x20361 (not $x20360)))
-(let (($x20126 (forall ((?v0 Int) )(let ((?x12534 (* (- 1) v_b_L_H_max_G_3$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12536 (<= (+ ?x3765 ?x12534) 0)))
-(let (($x12521 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12521 $x12536))))))))))
-))
-(let (($x20146 (not (or (not $x20126) $x20131))))
-(let (($x20151 (or $x20104 $x20146)))
-(let (($x20159 (not (or $x12518 (not $x20151)))))
-(let (($x20164 (or $x12518 $x20159)))
-(let (($x20175 (or $x16351 $x16354 $x20170 (not $x3960) (not (>= v_b_L_H_p_G_1$ 2)) $x20173 (not $x20164))))
-(let (($x20176 (not $x20175)))
-(let (($x20181 (or $x16351 $x16354 $x20176)))
-(let (($x20193 (not $x20181)))
-(let (($x20233 (not (or $x20190 $x20219 $x12476 $x20230 (not $x3994) $x20173 $x20193))))
-(let (($x20194 (or $x16330 $x16339 (not $x3935) (not $x3936) (not $x3937) $x20190 (not $x3940) (not $x3942) $x20173 $x20193)))
-(let (($x20195 (not $x20194)))
-(let (($x20200 (or $x16330 $x16339 $x20195)))
-(let (($x20208 (not (or $x16330 $x16333 (not $x20200)))))
-(let (($x20213 (or $x16330 $x16333 $x20208)))
-(let (($x20222 (not (or $x20190 $x20219 $x12471 (not $x20213)))))
-(let (($x20238 (or $x20222 $x20233)))
-(let (($x20246 (not (or $x16330 $x16339 $x20190 $x20219 (not $x20238)))))
-(let (($x20251 (or $x16330 $x16339 $x20246)))
-(let (($x20259 (not (or $x16330 $x16333 (not $x20251)))))
-(let (($x20264 (or $x16330 $x16333 $x20259)))
-(let (($x20272 (not (or $x20190 $x20219 $x12453 (not $x20264)))))
-(let (($x20366 (or $x20272 $x20361)))
-(let (($x20080 (forall ((?v0 Int) )(let ((?x12384 (* (- 1) v_b_L_H_max_G_1$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12425 (<= (+ ?x3765 ?x12384) 0)))
-(let (($x12411 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12411 $x12425))))))))))
-))
-(let (($x20389 (or $x8666 $x16288 (not (>= v_b_L_H_max_G_1$ 0)) (not (<= v_b_L_H_max_G_1$ 255)) $x20374 $x20375 (not (<= v_b_L_H_p_G_0$ 4294967295)) (not (>= (+ v_b_P_H_len$ (* (- 1) v_b_L_H_p_G_0$)) 0)) (not $x20080) $x12435 $x20379 $x20190 $x20219 (not $x3886) (not $x3806) (not $x3893) (not $x3894) (not $x3895) (not $x3896) (not $x3897) (not $x3898) (not $x20366))))
-(let (($x20390 (not $x20389)))
-(let (($x20395 (or $x8666 $x16288 $x20390)))
-(let (($x20058 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12367 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x3765)) 0)))
-(let (($x12354 (>= ?v0 1)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x10556 (not $x10138)))
-(or $x10556 $x17271 $x12354 $x12367)))))))))
-))
-(let (($x20404 (not (or (not $x20058) (not $x20395)))))
-(let (($x20409 (or $x20036 $x20404)))
-(let (($x20417 (not (or $x12351 (not $x20409)))))
-(let (($x20422 (or $x12351 $x20417)))
-(let (($x20433 (or $x16242 $x16251 (not $x3747) (not $x3748) (not $x3749) (not $x3750) (not $x20422))))
-(let (($x20434 (not $x20433)))
-(let (($x20439 (or $x16242 $x16251 $x20434)))
-(let (($x20447 (not (or $x16242 $x16245 (not $x20439)))))
-(let (($x20452 (or $x16242 $x16245 $x20447)))
-(let (($x20460 (not (or $x10065 (not $x20452)))))
-(let (($x20465 (or $x10065 $x20460)))
-(let (($x12631 (>= (+ ?0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x14211 (<= ?0 4294967295)))
-(let (($x17271 (not $x14211)))
-(let (($x20324 (or $x10556 $x17271 $x12631 (not $x3840))))
-(let ((@x21180 (monotonicity (quant-intro (refl (= $x20324 $x20324)) (= $x20335 $x21173)) (= (not $x20335) $x21178))))
-(let (($x12646 (<= (+ ?x3765 (* (- 1) v_b_S_result_G_0$)) 0)))
-(let (($x20315 (or $x10556 $x17271 $x12631 $x12646)))
-(let ((@x21172 (monotonicity (quant-intro (refl (= $x20315 $x20315)) (= $x20320 $x21165)) (= (not $x20320) (not $x21165)))))
-(let ((@x21186 (monotonicity (monotonicity @x21172 @x21180 (= (or (not $x20320) (not $x20335)) $x21181)) (= $x20344 $x21184))))
-(let ((@x21192 (monotonicity (monotonicity @x21186 (= $x20349 $x21187)) (= (not $x20349) $x21190))))
-(let (($x12536 (<= (+ ?x3765 ?x12534) 0)))
-(let (($x12521 (>= (+ ?0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
-(let (($x20121 (or $x10556 $x17271 $x12521 $x12536)))
-(let ((@x21056 (monotonicity (quant-intro (refl (= $x20121 $x20121)) (= $x20126 $x21049)) (= (not $x20126) (not $x21049)))))
-(let ((@x21062 (monotonicity (monotonicity @x21056 (= (or (not $x20126) $x20131) $x21057)) (= $x20146 $x21060))))
-(let ((@x21068 (monotonicity (monotonicity @x21062 (= $x20151 $x21063)) (= (not $x20151) $x21066))))
-(let ((@x21074 (monotonicity (monotonicity @x21068 (= (or $x12518 (not $x20151)) $x21069)) (= $x20159 $x21072))))
-(let ((@x21080 (monotonicity (monotonicity @x21074 (= $x20164 $x21075)) (= (not $x20164) $x21078))))
-(let ((@x21089 (monotonicity (monotonicity (monotonicity @x21080 (= $x20175 $x21081)) (= $x20176 $x21084)) (= $x20181 $x21087))))
-(let ((@x21125 (monotonicity (monotonicity @x21089 (= $x20193 $x21090)) (= (or $x20190 $x20219 $x12476 $x20230 (not $x3994) $x20173 $x20193) $x21123))))
-(let ((@x21098 (monotonicity (monotonicity (monotonicity @x21089 (= $x20193 $x21090)) (= $x20194 $x21093)) (= $x20195 $x21096))))
-(let ((@x21104 (monotonicity (monotonicity @x21098 (= $x20200 $x21099)) (= (not $x20200) $x21102))))
-(let ((@x21110 (monotonicity (monotonicity @x21104 (= (or $x16330 $x16333 (not $x20200)) $x21105)) (= $x20208 $x21108))))
-(let ((@x21116 (monotonicity (monotonicity @x21110 (= $x20213 $x21111)) (= (not $x20213) $x21114))))
-(let ((@x21122 (monotonicity (monotonicity @x21116 (= (or $x20190 $x20219 $x12471 (not $x20213)) $x21117)) (= $x20222 $x21120))))
-(let ((@x21131 (monotonicity @x21122 (monotonicity @x21125 (= $x20233 $x21126)) (= $x20238 $x21129))))
-(let ((@x21137 (monotonicity (monotonicity @x21131 (= (not $x20238) $x21132)) (= (or $x16330 $x16339 $x20190 $x20219 (not $x20238)) $x21135))))
-(let ((@x21146 (monotonicity (monotonicity (monotonicity @x21137 (= $x20246 $x21138)) (= $x20251 $x21141)) (= (not $x20251) $x21144))))
-(let ((@x21152 (monotonicity (monotonicity @x21146 (= (or $x16330 $x16333 (not $x20251)) $x21147)) (= $x20259 $x21150))))
-(let ((@x21158 (monotonicity (monotonicity @x21152 (= $x20264 $x21153)) (= (not $x20264) $x21156))))
-(let ((@x21164 (monotonicity (monotonicity @x21158 (= (or $x20190 $x20219 $x12453 (not $x20264)) $x21159)) (= $x20272 $x21162))))
-(let ((@x21201 (monotonicity @x21164 (monotonicity (monotonicity @x21192 (= $x20360 $x21193)) (= $x20361 $x21196)) (= $x20366 $x21199))))
-(let (($x12425 (<= (+ ?x3765 (* (- 1) v_b_L_H_max_G_1$)) 0)))
-(let (($x12411 (>= (+ ?0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
-(let (($x20075 (or $x10556 $x17271 $x12411 $x12425)))
-(let ((@x21048 (monotonicity (quant-intro (refl (= $x20075 $x20075)) (= $x20080 $x21041)) (= (not $x20080) $x21046))))
-(let ((@x21207 (monotonicity @x21048 (monotonicity @x21201 (= (not $x20366) $x21202)) (= $x20389 $x21205))))
-(let ((@x21216 (monotonicity (monotonicity (monotonicity @x21207 (= $x20390 $x21208)) (= $x20395 $x21211)) (= (not $x20395) $x21214))))
-(let (($x12367 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x3765)) 0)))
-(let (($x12354 (>= ?0 1)))
-(let (($x20053 (or $x10556 $x17271 $x12354 $x12367)))
-(let ((@x21040 (monotonicity (quant-intro (refl (= $x20053 $x20053)) (= $x20058 $x21033)) (= (not $x20058) (not $x21033)))))
-(let ((@x21222 (monotonicity (monotonicity @x21040 @x21216 (= (or (not $x20058) (not $x20395)) $x21217)) (= $x20404 $x21220))))
-(let ((@x21228 (monotonicity (monotonicity @x21222 (= $x20409 $x21223)) (= (not $x20409) $x21226))))
-(let ((@x21234 (monotonicity (monotonicity @x21228 (= (or $x12351 (not $x20409)) $x21229)) (= $x20417 $x21232))))
-(let ((@x21240 (monotonicity (monotonicity @x21234 (= $x20422 $x21235)) (= (not $x20422) $x21238))))
-(let ((@x21249 (monotonicity (monotonicity (monotonicity @x21240 (= $x20433 $x21241)) (= $x20434 $x21244)) (= $x20439 $x21247))))
-(let ((@x21255 (monotonicity (monotonicity @x21249 (= (not $x20439) $x21250)) (= (or $x16242 $x16245 (not $x20439)) $x21253))))
-(let ((@x21264 (monotonicity (monotonicity (monotonicity @x21255 (= $x20447 $x21256)) (= $x20452 $x21259)) (= (not $x20452) $x21262))))
-(let ((@x21270 (monotonicity (monotonicity @x21264 (= (or $x10065 (not $x20452)) $x21265)) (= $x20460 $x21268))))
-(let (($x16498 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3840 (= ?x3765 v_b_S_result_G_0$)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x12635 (not $x12631)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x13747 (and $x10138 $x14211 $x12635 $x3840)))
-(not $x13747)))))))))
-))
-(let (($x13163 (forall ((?v0 Int) )(let ((?x12644 (* (- 1) v_b_S_result_G_0$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12646 (<= (+ ?x3765 ?x12644) 0)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x12635 (not $x12631)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x13586 (and $x10138 $x14211 $x12635)))
-(let (($x13963 (not $x13586)))
-(or $x13963 $x12646)))))))))))
-))
-(let (($x16502 (and $x13163 $x16498)))
-(let (($x16743 (not $x16738)))
-(let (($x16746 (and $x16473 $x16474 $x16743)))
-(let (($x16749 (not $x16746)))
-(let (($x16765 (or $x16749 $x16760)))
-(let (($x16768 (not $x16765)))
-(let (($x16771 (or $x16768 $x16502)))
-(let (($x16777 (and $x12453 $x12404 $x12389 $x3818 $x3820 $x3822 $x3824 $x16771)))
-(let (($x12553 (not $x12550)))
-(let (($x12556 (and $x12553 $x3976)))
-(let (($x16388 (not $x12556)))
-(let (($x13130 (forall ((?v0 Int) )(let ((?x12534 (* (- 1) v_b_L_H_max_G_3$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12536 (<= (+ ?x3765 ?x12534) 0)))
-(let (($x12521 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
-(let (($x12525 (not $x12521)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x14023 (and $x10138 $x14211 $x12525)))
-(let (($x12802 (not $x14023)))
-(or $x12802 $x12536)))))))))))
-))
-(let (($x16391 (and $x13130 $x16388)))
-(let (($x16605 (not $x16600)))
-(let (($x16608 (and $x16366 $x16367 $x16605)))
-(let (($x16611 (not $x16608)))
-(let (($x16627 (or $x16611 $x16622)))
-(let (($x16630 (not $x16627)))
-(let (($x16633 (or $x16630 $x16391)))
-(let (($x16636 (and $x12514 $x16633)))
-(let (($x16639 (or $x12518 $x16636)))
-(let (($x12505 (>= v_b_L_H_p_G_1$ 2)))
-(let (($x16645 (and $x12494 $x13856 $x12500 $x3960 $x12505 $x12486 $x16639)))
-(let (($x16650 (or $x16351 $x16354 $x16645)))
-(let (($x16688 (and $x12404 $x12389 $x12471 $x3993 $x3994 $x12486 $x16650)))
-(let (($x16656 (and $x3923 $x3926 $x3935 $x3936 $x3937 $x12404 $x3940 $x3942 $x12486 $x16650)))
-(let (($x16661 (or $x16330 $x16339 $x16656)))
-(let (($x16667 (and $x3923 $x3924 $x16661)))
-(let (($x16672 (or $x16330 $x16333 $x16667)))
-(let (($x16678 (and $x12404 $x12389 $x12476 $x16672)))
-(let (($x16693 (or $x16678 $x16688)))
-(let (($x16699 (and $x3923 $x3926 $x12404 $x12389 $x16693)))
-(let (($x16704 (or $x16330 $x16339 $x16699)))
-(let (($x16710 (and $x3923 $x3924 $x16704)))
-(let (($x16715 (or $x16330 $x16333 $x16710)))
-(let (($x16721 (and $x12404 $x12389 $x12456 $x16715)))
-(let (($x16782 (or $x16721 $x16777)))
-(let (($x12438 (not $x12435)))
-(let (($x13341 (forall ((?v0 Int) )(let ((?x12384 (* (- 1) v_b_L_H_max_G_1$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12425 (<= (+ ?x3765 ?x12384) 0)))
-(let (($x12411 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
-(let (($x12415 (not $x12411)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x13128 (and $x10138 $x14211 $x12415)))
-(let (($x13111 (not $x13128)))
-(or $x13111 $x12425)))))))))))
-))
-(let (($x12407 (>= (+ v_b_P_H_len$ (* (- 1) v_b_L_H_p_G_0$)) 0)))
-(let (($x13193 (<= v_b_L_H_p_G_0$ 4294967295)))
-(let (($x12799 (<= v_b_L_H_max_G_1$ 255)))
-(let (($x12381 (>= v_b_L_H_max_G_1$ 0)))
-(let (($x16788 (and $x8667 $x3769 $x12381 $x12799 $x12834 $x12397 $x13193 $x12407 $x13341 $x12438 $x3794 $x12404 $x12389 $x3886 $x3806 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898 $x16782)))
-(let (($x16793 (or $x8666 $x16288 $x16788)))
-(let (($x12941 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12367 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x3765)) 0)))
-(let (($x12354 (>= ?v0 1)))
-(let (($x12357 (not $x12354)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x14020 (and $x10138 $x14211 $x12357)))
-(let (($x13679 (not $x14020)))
-(or $x13679 $x12367))))))))))
-))
-(let (($x16796 (and $x12941 $x16793)))
-(let (($x16268 (not (and (>= ?v0!13 0) (<= ?v0!13 4294967295) (not $x16265)))))
-(let (($x16274 (or $x16268 $x16273)))
-(let (($x16275 (not $x16274)))
-(let (($x16799 (or $x16275 $x16796)))
-(let (($x16802 (and $x12348 $x16799)))
-(let (($x16805 (or $x12351 $x16802)))
-(let (($x16811 (and $x3740 $x3743 $x3747 $x3748 $x3749 $x3750 $x16805)))
-(let (($x16816 (or $x16242 $x16251 $x16811)))
-(let (($x16822 (and $x3740 $x3741 $x16816)))
-(let (($x16827 (or $x16242 $x16245 $x16822)))
-(let (($x16830 (and $x3738 $x16827)))
-(let (($x16833 (or $x10065 $x16830)))
-(let (($x20369 (and $x8667 $x3769 $x12381 $x12799 $x12834 $x12397 $x13193 $x12407 $x20080 $x12438 $x3794 $x12404 $x12389 $x3886 $x3806 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898 $x20366)))
-(let ((@x20330 (monotonicity (rewrite (= (and $x10138 $x14211 (not $x12631) $x3840) (not $x20324))) (= (not (and $x10138 $x14211 (not $x12631) $x3840)) (not (not $x20324))))))
-(let ((@x20334 (trans @x20330 (rewrite (= (not (not $x20324)) $x20324)) (= (not (and $x10138 $x14211 (not $x12631) $x3840)) $x20324))))
-(let (($x12635 (not $x12631)))
-(let (($x13586 (and $x10138 $x14211 $x12635)))
-(let (($x13963 (not $x13586)))
-(let (($x13836 (or $x13963 $x12646)))
-(let ((@x20307 (monotonicity (rewrite (= $x13586 (not (or $x10556 $x17271 $x12631)))) (= $x13963 (not (not (or $x10556 $x17271 $x12631)))))))
-(let ((@x20311 (trans @x20307 (rewrite (= (not (not (or $x10556 $x17271 $x12631))) (or $x10556 $x17271 $x12631))) (= $x13963 (or $x10556 $x17271 $x12631)))))
-(let ((@x20319 (trans (monotonicity @x20311 (= $x13836 (or (or $x10556 $x17271 $x12631) $x12646))) (rewrite (= (or (or $x10556 $x17271 $x12631) $x12646) $x20315)) (= $x13836 $x20315))))
-(let ((@x20340 (monotonicity (quant-intro @x20319 (= $x13163 $x20320)) (quant-intro @x20334 (= $x16498 $x20335)) (= $x16502 (and $x20320 $x20335)))))
-(let ((@x20285 (monotonicity (rewrite (= $x16746 (not (or $x20277 $x20278 $x16738)))) (= $x16749 (not (not (or $x20277 $x20278 $x16738)))))))
-(let ((@x20289 (trans @x20285 (rewrite (= (not (not (or $x20277 $x20278 $x16738))) (or $x20277 $x20278 $x16738))) (= $x16749 (or $x20277 $x20278 $x16738)))))
-(let ((@x20297 (trans (monotonicity @x20289 (= $x16765 (or (or $x20277 $x20278 $x16738) $x16760))) (rewrite (= (or (or $x20277 $x20278 $x16738) $x16760) $x20293)) (= $x16765 $x20293))))
-(let ((@x20351 (monotonicity (monotonicity @x20297 (= $x16768 $x20298)) (trans @x20340 (rewrite (= (and $x20320 $x20335) $x20344)) (= $x16502 $x20344)) (= $x16771 $x20349))))
-(let ((@x20354 (monotonicity @x20351 (= $x16777 (and $x12453 $x12404 $x12389 $x3818 $x3820 $x3822 $x3824 $x20349)))))
-(let ((@x20365 (trans @x20354 (rewrite (= (and $x12453 $x12404 $x12389 $x3818 $x3820 $x3822 $x3824 $x20349) $x20361)) (= $x16777 $x20361))))
-(let ((@x20140 (trans (monotonicity (rewrite (= $x12556 $x20131)) (= $x16388 (not $x20131))) (rewrite (= (not $x20131) $x20130)) (= $x16388 $x20130))))
-(let (($x12525 (not $x12521)))
-(let (($x14023 (and $x10138 $x14211 $x12525)))
-(let (($x12802 (not $x14023)))
-(let (($x13633 (or $x12802 $x12536)))
-(let ((@x20113 (monotonicity (rewrite (= $x14023 (not (or $x10556 $x17271 $x12521)))) (= $x12802 (not (not (or $x10556 $x17271 $x12521)))))))
-(let ((@x20117 (trans @x20113 (rewrite (= (not (not (or $x10556 $x17271 $x12521))) (or $x10556 $x17271 $x12521))) (= $x12802 (or $x10556 $x17271 $x12521)))))
-(let ((@x20125 (trans (monotonicity @x20117 (= $x13633 (or (or $x10556 $x17271 $x12521) $x12536))) (rewrite (= (or (or $x10556 $x17271 $x12521) $x12536) $x20121)) (= $x13633 $x20121))))
-(let ((@x20143 (monotonicity (quant-intro @x20125 (= $x13130 $x20126)) @x20140 (= $x16391 (and $x20126 $x20130)))))
-(let ((@x20091 (monotonicity (rewrite (= $x16608 (not (or $x20083 $x20084 $x16600)))) (= $x16611 (not (not (or $x20083 $x20084 $x16600)))))))
-(let ((@x20095 (trans @x20091 (rewrite (= (not (not (or $x20083 $x20084 $x16600))) (or $x20083 $x20084 $x16600))) (= $x16611 (or $x20083 $x20084 $x16600)))))
-(let ((@x20103 (trans (monotonicity @x20095 (= $x16627 (or (or $x20083 $x20084 $x16600) $x16622))) (rewrite (= (or (or $x20083 $x20084 $x16600) $x16622) $x20099)) (= $x16627 $x20099))))
-(let ((@x20153 (monotonicity (monotonicity @x20103 (= $x16630 $x20104)) (trans @x20143 (rewrite (= (and $x20126 $x20130) $x20146)) (= $x16391 $x20146)) (= $x16633 $x20151))))
-(let ((@x20163 (trans (monotonicity @x20153 (= $x16636 (and $x12514 $x20151))) (rewrite (= (and $x12514 $x20151) $x20159)) (= $x16636 $x20159))))
-(let ((@x20169 (monotonicity (monotonicity @x20163 (= $x16639 $x20164)) (= $x16645 (and $x12494 $x13856 $x12500 $x3960 $x12505 $x12486 $x20164)))))
-(let ((@x20180 (trans @x20169 (rewrite (= (and $x12494 $x13856 $x12500 $x3960 $x12505 $x12486 $x20164) $x20176)) (= $x16645 $x20176))))
-(let ((@x20229 (monotonicity (monotonicity @x20180 (= $x16650 $x20181)) (= $x16688 (and $x12404 $x12389 $x12471 $x3993 $x3994 $x12486 $x20181)))))
-(let ((@x20237 (trans @x20229 (rewrite (= (and $x12404 $x12389 $x12471 $x3993 $x3994 $x12486 $x20181) $x20233)) (= $x16688 $x20233))))
-(let ((@x20197 (rewrite (= (and $x3923 $x3926 $x3935 $x3936 $x3937 $x12404 $x3940 $x3942 $x12486 $x20181) $x20195))))
-(let ((@x20186 (monotonicity (monotonicity @x20180 (= $x16650 $x20181)) (= $x16656 (and $x3923 $x3926 $x3935 $x3936 $x3937 $x12404 $x3940 $x3942 $x12486 $x20181)))))
-(let ((@x20205 (monotonicity (monotonicity (trans @x20186 @x20197 (= $x16656 $x20195)) (= $x16661 $x20200)) (= $x16667 (and $x3923 $x3924 $x20200)))))
-(let ((@x20212 (trans @x20205 (rewrite (= (and $x3923 $x3924 $x20200) $x20208)) (= $x16667 $x20208))))
-(let ((@x20218 (monotonicity (monotonicity @x20212 (= $x16672 $x20213)) (= $x16678 (and $x12404 $x12389 $x12476 $x20213)))))
-(let ((@x20226 (trans @x20218 (rewrite (= (and $x12404 $x12389 $x12476 $x20213) $x20222)) (= $x16678 $x20222))))
-(let ((@x20243 (monotonicity (monotonicity @x20226 @x20237 (= $x16693 $x20238)) (= $x16699 (and $x3923 $x3926 $x12404 $x12389 $x20238)))))
-(let ((@x20250 (trans @x20243 (rewrite (= (and $x3923 $x3926 $x12404 $x12389 $x20238) $x20246)) (= $x16699 $x20246))))
-(let ((@x20256 (monotonicity (monotonicity @x20250 (= $x16704 $x20251)) (= $x16710 (and $x3923 $x3924 $x20251)))))
-(let ((@x20263 (trans @x20256 (rewrite (= (and $x3923 $x3924 $x20251) $x20259)) (= $x16710 $x20259))))
-(let ((@x20269 (monotonicity (monotonicity @x20263 (= $x16715 $x20264)) (= $x16721 (and $x12404 $x12389 $x12456 $x20264)))))
-(let ((@x20276 (trans @x20269 (rewrite (= (and $x12404 $x12389 $x12456 $x20264) $x20272)) (= $x16721 $x20272))))
-(let (($x12415 (not $x12411)))
-(let (($x13128 (and $x10138 $x14211 $x12415)))
-(let (($x13111 (not $x13128)))
-(let (($x12774 (or $x13111 $x12425)))
-(let ((@x20067 (monotonicity (rewrite (= $x13128 (not (or $x10556 $x17271 $x12411)))) (= $x13111 (not (not (or $x10556 $x17271 $x12411)))))))
-(let ((@x20071 (trans @x20067 (rewrite (= (not (not (or $x10556 $x17271 $x12411))) (or $x10556 $x17271 $x12411))) (= $x13111 (or $x10556 $x17271 $x12411)))))
-(let ((@x20079 (trans (monotonicity @x20071 (= $x12774 (or (or $x10556 $x17271 $x12411) $x12425))) (rewrite (= (or (or $x10556 $x17271 $x12411) $x12425) $x20075)) (= $x12774 $x20075))))
-(let ((@x20371 (monotonicity (quant-intro @x20079 (= $x13341 $x20080)) (monotonicity @x20276 @x20365 (= $x16782 $x20366)) (= $x16788 $x20369))))
-(let ((@x20397 (monotonicity (trans @x20371 (rewrite (= $x20369 $x20390)) (= $x16788 $x20390)) (= $x16793 $x20395))))
-(let (($x12357 (not $x12354)))
-(let (($x14020 (and $x10138 $x14211 $x12357)))
-(let (($x13679 (not $x14020)))
-(let (($x12918 (or $x13679 $x12367)))
-(let ((@x20045 (monotonicity (rewrite (= $x14020 (not (or $x10556 $x17271 $x12354)))) (= $x13679 (not (not (or $x10556 $x17271 $x12354)))))))
-(let ((@x20049 (trans @x20045 (rewrite (= (not (not (or $x10556 $x17271 $x12354))) (or $x10556 $x17271 $x12354))) (= $x13679 (or $x10556 $x17271 $x12354)))))
-(let ((@x20057 (trans (monotonicity @x20049 (= $x12918 (or (or $x10556 $x17271 $x12354) $x12367))) (rewrite (= (or (or $x10556 $x17271 $x12354) $x12367) $x20053)) (= $x12918 $x20053))))
-(let ((@x20400 (monotonicity (quant-intro @x20057 (= $x12941 $x20058)) @x20397 (= $x16796 (and $x20058 $x20395)))))
-(let (($x20017 (or (not (>= ?v0!13 0)) (not (<= ?v0!13 4294967295)) $x16265)))
-(let (($x20019 (= (and (>= ?v0!13 0) (<= ?v0!13 4294967295) (not $x16265)) (not $x20017))))
-(let ((@x20027 (trans (monotonicity (rewrite $x20019) (= $x16268 (not (not $x20017)))) (rewrite (= (not (not $x20017)) $x20017)) (= $x16268 $x20017))))
-(let ((@x20035 (trans (monotonicity @x20027 (= $x16274 (or $x20017 $x16273))) (rewrite (= (or $x20017 $x16273) $x20031)) (= $x16274 $x20031))))
-(let ((@x20411 (monotonicity (monotonicity @x20035 (= $x16275 $x20036)) (trans @x20400 (rewrite (= (and $x20058 $x20395) $x20404)) (= $x16796 $x20404)) (= $x16799 $x20409))))
-(let ((@x20421 (trans (monotonicity @x20411 (= $x16802 (and $x12348 $x20409))) (rewrite (= (and $x12348 $x20409) $x20417)) (= $x16802 $x20417))))
-(let ((@x20427 (monotonicity (monotonicity @x20421 (= $x16805 $x20422)) (= $x16811 (and $x3740 $x3743 $x3747 $x3748 $x3749 $x3750 $x20422)))))
-(let ((@x20438 (trans @x20427 (rewrite (= (and $x3740 $x3743 $x3747 $x3748 $x3749 $x3750 $x20422) $x20434)) (= $x16811 $x20434))))
-(let ((@x20444 (monotonicity (monotonicity @x20438 (= $x16816 $x20439)) (= $x16822 (and $x3740 $x3741 $x20439)))))
-(let ((@x20451 (trans @x20444 (rewrite (= (and $x3740 $x3741 $x20439) $x20447)) (= $x16822 $x20447))))
-(let ((@x20457 (monotonicity (monotonicity @x20451 (= $x16827 $x20452)) (= $x16830 (and $x3738 $x20452)))))
-(let ((@x20467 (monotonicity (trans @x20457 (rewrite (= (and $x3738 $x20452) $x20460)) (= $x16830 $x20460)) (= $x16833 $x20465))))
-(let (($x16483 (<= (+ ?x16481 (* (- 1) v_b_S_result_G_0$)) 0)))
-(let (($x16478 (and $x16473 $x16474 (not (>= (+ ?v0!15 (* (- 1) v_b_P_H_len$)) 0)))))
-(let (($x16485 (not (or (not $x16478) $x16483))))
-(let (($x16506 (or $x16485 $x16502)))
-(let (($x14268 (and $x12404 $x12389 $x3818 $x3820 $x3822 $x3824)))
-(let (($x14273 (not $x14268)))
-(let (($x16469 (not $x14273)))
-(let (($x12619 (and $x12404 $x12389 $x12453)))
-(let (($x12622 (not $x12619)))
-(let (($x16466 (not $x12622)))
-(let (($x16510 (and $x16466 $x16469 $x16506)))
-(let (($x16376 (<= (+ ?x16374 ?x12534) 0)))
-(let (($x16371 (and $x16366 $x16367 (not (>= (+ ?v0!14 (* (- 1) v_b_L_H_p_G_1$)) 0)))))
-(let (($x16378 (not (or (not $x16371) $x16376))))
-(let (($x16395 (or $x16378 $x16391)))
-(let (($x16362 (not $x12518)))
-(let (($x16399 (and $x16362 $x16395)))
-(let (($x16403 (or $x12518 $x16399)))
-(let (($x13815 (and $x12494 $x13856 $x12500 $x3960 $x12505 $x12486)))
-(let (($x13880 (not $x13815)))
-(let (($x16357 (not $x13880)))
-(let (($x16407 (and $x16357 $x16403)))
-(let (($x16411 (or $x16351 $x16354 $x16407)))
-(let (($x12592 (and $x12404 $x12389 $x12471 $x3993 $x3994 $x12486)))
-(let (($x12595 (not $x12592)))
-(let (($x16435 (not $x12595)))
-(let (($x16438 (and $x16435 $x16411)))
-(let (($x12488 (and $x3923 $x3926 $x3935 $x3936 $x3937 $x12404 $x3940 $x3942 $x12486)))
-(let (($x12491 (not $x12488)))
-(let (($x16348 (not $x12491)))
-(let (($x16415 (and $x16348 $x16411)))
-(let (($x16419 (or $x16330 $x16339 $x16415)))
-(let (($x16336 (not $x9775)))
-(let (($x16423 (and $x16336 $x16419)))
-(let (($x16427 (or $x16330 $x16333 $x16423)))
-(let (($x12479 (and $x12404 $x12389 $x12476)))
-(let (($x12482 (not $x12479)))
-(let (($x16345 (not $x12482)))
-(let (($x16431 (and $x16345 $x16427)))
-(let (($x16442 (or $x16431 $x16438)))
-(let (($x12465 (and $x3923 $x3926 $x12404 $x12389)))
-(let (($x12468 (not $x12465)))
-(let (($x16342 (not $x12468)))
-(let (($x16446 (and $x16342 $x16442)))
-(let (($x16450 (or $x16330 $x16339 $x16446)))
-(let (($x16454 (and $x16336 $x16450)))
-(let (($x16458 (or $x16330 $x16333 $x16454)))
-(let (($x12459 (and $x12404 $x12389 $x12456)))
-(let (($x12462 (not $x12459)))
-(let (($x16327 (not $x12462)))
-(let (($x16462 (and $x16327 $x16458)))
-(let (($x16514 (or $x16462 $x16510)))
-(let (($x14257 (and $x12404 $x12389 $x3886 $x3806 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898)))
-(let (($x14262 (not $x14257)))
-(let (($x16324 (not $x14262)))
-(let (($x13242 (and $x8667 $x3769 $x12381 $x12799 $x12389 $x12834 $x12397 $x13193 $x12404 $x12407 $x13341 $x12438 $x3794)))
-(let (($x16518 (and $x13242 $x16324 $x16514)))
-(let (($x16285 (not $x8667)))
-(let (($x16522 (or $x16285 $x16288 $x16518)))
-(let (($x16526 (and $x12941 $x16522)))
-(let (($x16530 (or $x16275 $x16526)))
-(let (($x16259 (not $x12351)))
-(let (($x16534 (and $x16259 $x16530)))
-(let (($x16538 (or $x12351 $x16534)))
-(let (($x16254 (not $x10031)))
-(let (($x16542 (and $x16254 $x16538)))
-(let (($x16546 (or $x16242 $x16251 $x16542)))
-(let (($x16248 (not $x10048)))
-(let (($x16550 (and $x16248 $x16546)))
-(let (($x16554 (or $x16242 $x16245 $x16550)))
-(let (($x16239 (not $x10065)))
-(let (($x16558 (and $x16239 $x16554)))
-(let (($x16562 (or $x10065 $x16558)))
-(let (($x16753 (= (+ ?x16481 (* (- 1) v_b_S_result_G_0$)) (+ (* (- 1) v_b_S_result_G_0$) ?x16481))))
-(let ((@x16757 (monotonicity (rewrite $x16753) (= $x16483 (<= (+ (* (- 1) v_b_S_result_G_0$) ?x16481) 0)))))
-(let ((@x16764 (trans @x16757 (rewrite (= (<= (+ (* (- 1) v_b_S_result_G_0$) ?x16481) 0) $x16760)) (= $x16483 $x16760))))
-(let (($x16476 (>= (+ ?v0!15 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x16731 (= (+ ?v0!15 (* (- 1) v_b_P_H_len$)) (+ (* (- 1) v_b_P_H_len$) ?v0!15))))
-(let ((@x16735 (monotonicity (rewrite $x16731) (= $x16476 (>= (+ (* (- 1) v_b_P_H_len$) ?v0!15) 0)))))
-(let ((@x16742 (trans @x16735 (rewrite (= (>= (+ (* (- 1) v_b_P_H_len$) ?v0!15) 0) $x16738)) (= $x16476 $x16738))))
-(let ((@x16748 (monotonicity (monotonicity @x16742 (= (not $x16476) $x16743)) (= $x16478 $x16746))))
-(let ((@x16767 (monotonicity (monotonicity @x16748 (= (not $x16478) $x16749)) @x16764 (= (or (not $x16478) $x16483) $x16765))))
-(let ((@x16776 (monotonicity (rewrite (= $x16466 $x12619)) (rewrite (= $x16469 $x14268)) (monotonicity (monotonicity @x16767 (= $x16485 $x16768)) (= $x16506 $x16771)) (= $x16510 (and $x12619 $x14268 $x16771)))))
-(let ((@x16781 (trans @x16776 (rewrite (= (and $x12619 $x14268 $x16771) $x16777)) (= $x16510 $x16777))))
-(let ((@x16619 (monotonicity (rewrite (= (+ ?x16374 ?x12534) (+ ?x12534 ?x16374))) (= $x16376 (<= (+ ?x12534 ?x16374) 0)))))
-(let ((@x16626 (trans @x16619 (rewrite (= (<= (+ ?x12534 ?x16374) 0) $x16622)) (= $x16376 $x16622))))
-(let ((@x16602 (rewrite (= (>= (+ (* (- 1) v_b_L_H_p_G_1$) ?v0!14) 0) $x16600))))
-(let (($x16369 (>= (+ ?v0!14 (* (- 1) v_b_L_H_p_G_1$)) 0)))
-(let (($x16593 (= (+ ?v0!14 (* (- 1) v_b_L_H_p_G_1$)) (+ (* (- 1) v_b_L_H_p_G_1$) ?v0!14))))
-(let ((@x16597 (monotonicity (rewrite $x16593) (= $x16369 (>= (+ (* (- 1) v_b_L_H_p_G_1$) ?v0!14) 0)))))
-(let ((@x16607 (monotonicity (trans @x16597 @x16602 (= $x16369 $x16600)) (= (not $x16369) $x16605))))
-(let ((@x16613 (monotonicity (monotonicity @x16607 (= $x16371 $x16608)) (= (not $x16371) $x16611))))
-(let ((@x16632 (monotonicity (monotonicity @x16613 @x16626 (= (or (not $x16371) $x16376) $x16627)) (= $x16378 $x16630))))
-(let ((@x16638 (monotonicity (rewrite (= $x16362 $x12514)) (monotonicity @x16632 (= $x16395 $x16633)) (= $x16399 $x16636))))
-(let ((@x16644 (monotonicity (rewrite (= $x16357 $x13815)) (monotonicity @x16638 (= $x16403 $x16639)) (= $x16407 (and $x13815 $x16639)))))
-(let ((@x16652 (monotonicity (trans @x16644 (rewrite (= (and $x13815 $x16639) $x16645)) (= $x16407 $x16645)) (= $x16411 $x16650))))
-(let ((@x16687 (monotonicity (rewrite (= $x16435 $x12592)) @x16652 (= $x16438 (and $x12592 $x16650)))))
-(let ((@x16655 (monotonicity (rewrite (= $x16348 $x12488)) @x16652 (= $x16415 (and $x12488 $x16650)))))
-(let ((@x16663 (monotonicity (trans @x16655 (rewrite (= (and $x12488 $x16650) $x16656)) (= $x16415 $x16656)) (= $x16419 $x16661))))
-(let ((@x16666 (monotonicity (rewrite (= $x16336 $x3925)) @x16663 (= $x16423 (and $x3925 $x16661)))))
-(let ((@x16674 (monotonicity (trans @x16666 (rewrite (= (and $x3925 $x16661) $x16667)) (= $x16423 $x16667)) (= $x16427 $x16672))))
-(let ((@x16677 (monotonicity (rewrite (= $x16345 $x12479)) @x16674 (= $x16431 (and $x12479 $x16672)))))
-(let ((@x16695 (monotonicity (trans @x16677 (rewrite (= (and $x12479 $x16672) $x16678)) (= $x16431 $x16678)) (trans @x16687 (rewrite (= (and $x12592 $x16650) $x16688)) (= $x16438 $x16688)) (= $x16442 $x16693))))
-(let ((@x16698 (monotonicity (rewrite (= $x16342 $x12465)) @x16695 (= $x16446 (and $x12465 $x16693)))))
-(let ((@x16706 (monotonicity (trans @x16698 (rewrite (= (and $x12465 $x16693) $x16699)) (= $x16446 $x16699)) (= $x16450 $x16704))))
-(let ((@x16709 (monotonicity (rewrite (= $x16336 $x3925)) @x16706 (= $x16454 (and $x3925 $x16704)))))
-(let ((@x16717 (monotonicity (trans @x16709 (rewrite (= (and $x3925 $x16704) $x16710)) (= $x16454 $x16710)) (= $x16458 $x16715))))
-(let ((@x16720 (monotonicity (rewrite (= $x16327 $x12459)) @x16717 (= $x16462 (and $x12459 $x16715)))))
-(let ((@x16784 (monotonicity (trans @x16720 (rewrite (= (and $x12459 $x16715) $x16721)) (= $x16462 $x16721)) @x16781 (= $x16514 $x16782))))
-(let ((@x16787 (monotonicity (rewrite (= $x16324 $x14257)) @x16784 (= $x16518 (and $x13242 $x14257 $x16782)))))
-(let ((@x16792 (trans @x16787 (rewrite (= (and $x13242 $x14257 $x16782) $x16788)) (= $x16518 $x16788))))
-(let ((@x16798 (monotonicity (monotonicity (rewrite (= $x16285 $x8666)) @x16792 (= $x16522 $x16793)) (= $x16526 $x16796))))
-(let ((@x16804 (monotonicity (rewrite (= $x16259 $x12348)) (monotonicity @x16798 (= $x16530 $x16799)) (= $x16534 $x16802))))
-(let ((@x16810 (monotonicity (rewrite (= $x16254 $x8880)) (monotonicity @x16804 (= $x16538 $x16805)) (= $x16542 (and $x8880 $x16805)))))
-(let ((@x16818 (monotonicity (trans @x16810 (rewrite (= (and $x8880 $x16805) $x16811)) (= $x16542 $x16811)) (= $x16546 $x16816))))
-(let ((@x16821 (monotonicity (rewrite (= $x16248 $x3742)) @x16818 (= $x16550 (and $x3742 $x16816)))))
-(let ((@x16829 (monotonicity (trans @x16821 (rewrite (= (and $x3742 $x16816) $x16822)) (= $x16550 $x16822)) (= $x16554 $x16827))))
-(let ((@x16835 (monotonicity (monotonicity (rewrite (= $x16239 $x3738)) @x16829 (= $x16558 $x16830)) (= $x16562 $x16833))))
-(let (($x12742 (exists ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3840 (= ?x3765 v_b_S_result_G_0$)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x12635 (not $x12631)))
-(let (($x14211 (<= ?v0 4294967295)))
-(let (($x10138 (>= ?v0 0)))
-(and $x10138 $x14211 $x12635 $x3840))))))))
-))
-(let (($x13974 (not $x13163)))
-(let (($x14165 (or $x13974 $x12742)))
-(let (($x13256 (and $x13163 $x14165)))
-(let (($x13521 (or $x12622 $x14273 $x13256)))
-(let (($x13025 (not $x13130)))
-(let (($x12874 (or $x13025 $x12556)))
-(let (($x13199 (and $x13130 $x12874)))
-(let (($x13574 (or $x12518 $x13199)))
-(let (($x13045 (and $x12514 $x13574)))
-(let (($x14132 (or $x13880 $x13045)))
-(let (($x13699 (and $x12494 $x13856 $x14132)))
-(let (($x13117 (or $x12595 $x13699)))
-(let (($x13338 (or $x12491 $x13699)))
-(let (($x13207 (and $x3923 $x3926 $x13338)))
-(let (($x14076 (or $x9775 $x13207)))
-(let (($x14119 (and $x3923 $x3924 $x14076)))
-(let (($x13844 (or $x12482 $x14119)))
-(let (($x13324 (and $x13844 $x13117)))
-(let (($x12957 (or $x12468 $x13324)))
-(let (($x13000 (and $x3923 $x3926 $x12957)))
-(let (($x13827 (or $x9775 $x13000)))
-(let (($x14170 (and $x3923 $x3924 $x13827)))
-(let (($x14053 (or $x12462 $x14170)))
-(let (($x13922 (and $x14053 $x13521)))
-(let (($x13591 (not $x13242)))
-(let (($x13357 (or $x13591 $x14262 $x13922)))
-(let (($x12756 (and $x8667 $x3769 $x13357)))
-(let (($x13900 (not $x12941)))
-(let (($x12819 (or $x13900 $x12756)))
-(let (($x13702 (and $x12941 $x12819)))
-(let (($x13223 (or $x12351 $x13702)))
-(let (($x12832 (and $x12348 $x13223)))
-(let (($x13861 (or $x10031 $x12832)))
-(let (($x12808 (and $x3740 $x3743 $x13861)))
-(let (($x13195 (or $x10048 $x12808)))
-(let (($x13550 (and $x3740 $x3741 $x13195)))
-(let (($x13361 (or $x10065 $x13550)))
-(let (($x13725 (not (and $x3738 $x13361))))
-(let ((@x16497 (refl (~ (not (and $x10138 $x14211 $x12635 $x3840)) (not (and $x10138 $x14211 $x12635 $x3840))))))
-(let ((@x16494 (nnf-neg (nnf-pos (refl (~ $x13836 $x13836)) (~ $x13163 $x13163)) (~ (not $x13974) $x13163))))
-(let ((@x16505 (nnf-neg @x16494 (nnf-neg @x16497 (~ (not $x12742) $x16498)) (~ (not $x14165) $x16502))))
-(let ((@x16513 (nnf-neg (refl (~ $x16466 $x16466)) (refl (~ $x16469 $x16469)) (nnf-neg (sk (~ $x13974 $x16485)) @x16505 (~ (not $x13256) $x16506)) (~ (not $x13521) $x16510))))
-(let ((@x16387 (nnf-neg (nnf-pos (refl (~ $x13633 $x13633)) (~ $x13130 $x13130)) (~ (not $x13025) $x13130))))
-(let ((@x16398 (nnf-neg (sk (~ $x13025 $x16378)) (nnf-neg @x16387 (refl (~ $x16388 $x16388)) (~ (not $x12874) $x16391)) (~ (not $x13199) $x16395))))
-(let ((@x16406 (nnf-neg (refl (~ $x12518 $x12518)) (nnf-neg (refl (~ $x16362 $x16362)) @x16398 (~ (not $x13574) $x16399)) (~ (not $x13045) $x16403))))
-(let ((@x16414 (nnf-neg (refl (~ $x16351 $x16351)) (refl (~ $x16354 $x16354)) (nnf-neg (refl (~ $x16357 $x16357)) @x16406 (~ (not $x14132) $x16407)) (~ (not $x13699) $x16411))))
-(let ((@x16332 (refl (~ $x16330 $x16330))))
-(let ((@x16422 (nnf-neg @x16332 (refl (~ $x16339 $x16339)) (nnf-neg (refl (~ $x16348 $x16348)) @x16414 (~ (not $x13338) $x16415)) (~ (not $x13207) $x16419))))
-(let ((@x16430 (nnf-neg @x16332 (refl (~ $x16333 $x16333)) (nnf-neg (refl (~ $x16336 $x16336)) @x16422 (~ (not $x14076) $x16423)) (~ (not $x14119) $x16427))))
-(let ((@x16445 (nnf-neg (nnf-neg (refl (~ $x16345 $x16345)) @x16430 (~ (not $x13844) $x16431)) (nnf-neg (refl (~ $x16435 $x16435)) @x16414 (~ (not $x13117) $x16438)) (~ (not $x13324) $x16442))))
-(let ((@x16453 (nnf-neg @x16332 (refl (~ $x16339 $x16339)) (nnf-neg (refl (~ $x16342 $x16342)) @x16445 (~ (not $x12957) $x16446)) (~ (not $x13000) $x16450))))
-(let ((@x16461 (nnf-neg @x16332 (refl (~ $x16333 $x16333)) (nnf-neg (refl (~ $x16336 $x16336)) @x16453 (~ (not $x13827) $x16454)) (~ (not $x14170) $x16458))))
-(let ((@x16517 (nnf-neg (nnf-neg (refl (~ $x16327 $x16327)) @x16461 (~ (not $x14053) $x16462)) @x16513 (~ (not $x13922) $x16514))))
-(let ((@x16320 (monotonicity (refl (~ $x8667 $x8667)) (refl (~ $x3769 $x3769)) (refl (~ $x12381 $x12381)) (refl (~ $x12799 $x12799)) (refl (~ $x12389 $x12389)) (refl (~ $x12834 $x12834)) (refl (~ $x12397 $x12397)) (refl (~ $x13193 $x13193)) (refl (~ $x12404 $x12404)) (refl (~ $x12407 $x12407)) (nnf-pos (refl (~ $x12774 $x12774)) (~ $x13341 $x13341)) (refl (~ $x12438 $x12438)) (refl (~ $x3794 $x3794)) (~ $x13242 $x13242))))
-(let ((@x16521 (nnf-neg (nnf-neg @x16320 (~ (not $x13591) $x13242)) (refl (~ $x16324 $x16324)) @x16517 (~ (not $x13357) $x16518))))
-(let ((@x16525 (nnf-neg (refl (~ $x16285 $x16285)) (refl (~ $x16288 $x16288)) @x16521 (~ (not $x12756) $x16522))))
-(let ((@x16284 (nnf-neg (nnf-pos (refl (~ $x12918 $x12918)) (~ $x12941 $x12941)) (~ (not $x13900) $x12941))))
-(let ((@x16533 (nnf-neg (sk (~ $x13900 $x16275)) (nnf-neg @x16284 @x16525 (~ (not $x12819) $x16526)) (~ (not $x13702) $x16530))))
-(let ((@x16541 (nnf-neg (refl (~ $x12351 $x12351)) (nnf-neg (refl (~ $x16259 $x16259)) @x16533 (~ (not $x13223) $x16534)) (~ (not $x12832) $x16538))))
-(let ((@x16549 (nnf-neg (refl (~ $x16242 $x16242)) (refl (~ $x16251 $x16251)) (nnf-neg (refl (~ $x16254 $x16254)) @x16541 (~ (not $x13861) $x16542)) (~ (not $x12808) $x16546))))
-(let ((@x16557 (nnf-neg (refl (~ $x16242 $x16242)) (refl (~ $x16245 $x16245)) (nnf-neg (refl (~ $x16248 $x16248)) @x16549 (~ (not $x13195) $x16550)) (~ (not $x13550) $x16554))))
-(let ((@x16564 (nnf-neg (refl (~ $x10065 $x10065)) (nnf-neg (refl (~ $x16239 $x16239)) @x16557 (~ (not $x13361) $x16558)) (~ $x13725 $x16562))))
-(let (($x12661 (exists ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x3840 (= ?x3765 v_b_S_result_G_0$)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x12635 (not $x12631)))
-(let ((?x10215 (* (- 1) b_S_max_o_u4$)))
-(let ((?x10220 (+ ?v0 ?x10215)))
-(let (($x10221 (<= ?x10220 0)))
-(let (($x10138 (>= ?v0 0)))
-(and $x10138 $x10221 $x12635 $x3840))))))))))
-))
-(let (($x12652 (forall ((?v0 Int) )(let ((?x12644 (* (- 1) v_b_S_result_G_0$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12646 (<= (+ ?x3765 ?x12644) 0)))
-(let (($x12631 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x12635 (not $x12631)))
-(let ((?x10215 (* (- 1) b_S_max_o_u4$)))
-(let ((?x10220 (+ ?v0 ?x10215)))
-(let (($x10221 (<= ?x10220 0)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x12638 (and $x10138 $x10221 $x12635)))
-(let (($x12641 (not $x12638)))
-(or $x12641 $x12646)))))))))))))
-))
-(let (($x12655 (not $x12652)))
-(let (($x12664 (or $x12655 $x12661)))
-(let (($x12667 (and $x12652 $x12664)))
-(let (($x14289 (or $x12622 $x14273 $x12667)))
-(let (($x12542 (forall ((?v0 Int) )(let ((?x12534 (* (- 1) v_b_L_H_max_G_3$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12536 (<= (+ ?x3765 ?x12534) 0)))
-(let (($x12521 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
-(let (($x12525 (not $x12521)))
-(let ((?x10215 (* (- 1) b_S_max_o_u4$)))
-(let ((?x10220 (+ ?v0 ?x10215)))
-(let (($x10221 (<= ?x10220 0)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x12528 (and $x10138 $x10221 $x12525)))
-(let (($x12531 (not $x12528)))
-(or $x12531 $x12536)))))))))))))
-))
-(let (($x12545 (not $x12542)))
-(let (($x12559 (or $x12545 $x12556)))
-(let (($x12562 (and $x12542 $x12559)))
-(let (($x12565 (or $x12518 $x12562)))
-(let (($x12568 (and $x12514 $x12565)))
-(let ((?x12400 (* (- 1) v_b_L_H_p_G_0$)))
-(let ((?x12401 (+ b_S_max_o_u4$ ?x12400)))
-(let (($x12497 (>= ?x12401 1)))
-(let (($x12508 (and $x12494 $x12497 $x12500 $x3960 $x12505 $x12486)))
-(let (($x12511 (not $x12508)))
-(let (($x12571 (or $x12511 $x12568)))
-(let (($x12574 (and $x12494 $x12497 $x12571)))
-(let (($x12598 (or $x12595 $x12574)))
-(let (($x12577 (or $x12491 $x12574)))
-(let (($x12580 (and $x3923 $x3926 $x12577)))
-(let (($x12583 (or $x9775 $x12580)))
-(let (($x12586 (and $x3923 $x3924 $x12583)))
-(let (($x12589 (or $x12482 $x12586)))
-(let (($x12601 (and $x12589 $x12598)))
-(let (($x12604 (or $x12468 $x12601)))
-(let (($x12607 (and $x3923 $x3926 $x12604)))
-(let (($x12610 (or $x9775 $x12607)))
-(let (($x12613 (and $x3923 $x3924 $x12610)))
-(let (($x12616 (or $x12462 $x12613)))
-(let (($x14294 (and $x12616 $x14289)))
-(let (($x12431 (forall ((?v0 Int) )(let ((?x12384 (* (- 1) v_b_L_H_max_G_1$)))
-(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12425 (<= (+ ?x3765 ?x12384) 0)))
-(let (($x12411 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
-(let (($x12415 (not $x12411)))
-(let ((?x10215 (* (- 1) b_S_max_o_u4$)))
-(let ((?x10220 (+ ?v0 ?x10215)))
-(let (($x10221 (<= ?x10220 0)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x12418 (and $x10138 $x10221 $x12415)))
-(let (($x12421 (not $x12418)))
-(or $x12421 $x12425)))))))))))))
-))
-(let (($x12399 (>= ?x12401 0)))
-(let (($x12391 (>= (+ b_S_max_o_u4$ (* (- 1) v_b_SL_H_witness_G_0$)) 0)))
-(let (($x12383 (>= (+ b_S_max_o_u1$ (* (- 1) v_b_L_H_max_G_1$)) 0)))
-(let (($x12441 (and $x8667 $x3769 $x12381 $x12383 $x12389 $x12391 $x12397 $x12399 $x12404 $x12407 $x12431 $x12438 $x3794)))
-(let (($x12444 (not $x12441)))
-(let (($x14297 (or $x12444 $x14262 $x14294)))
-(let (($x14300 (and $x8667 $x3769 $x14297)))
-(let (($x12374 (forall ((?v0 Int) )(let ((?x3765 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
-(let (($x12367 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x3765)) 0)))
-(let (($x12354 (>= ?v0 1)))
-(let (($x12357 (not $x12354)))
-(let ((?x10215 (* (- 1) b_S_max_o_u4$)))
-(let ((?x10220 (+ ?v0 ?x10215)))
-(let (($x10221 (<= ?x10220 0)))
-(let (($x10138 (>= ?v0 0)))
-(let (($x12360 (and $x10138 $x10221 $x12357)))
-(let (($x12363 (not $x12360)))
-(or $x12363 $x12367))))))))))))
-))
-(let (($x12377 (not $x12374)))
-(let (($x14303 (or $x12377 $x14300)))
-(let (($x14306 (and $x12374 $x14303)))
-(let (($x14309 (or $x12351 $x14306)))
-(let (($x14312 (and $x12348 $x14309)))
-(let (($x14315 (or $x10031 $x14312)))
-(let (($x14318 (and $x3740 $x3743 $x14315)))
-(let (($x14321 (or $x10048 $x14318)))
-(let (($x14324 (and $x3740 $x3741 $x14321)))
-(let (($x14327 (or $x10065 $x14324)))
-(let (($x14330 (and $x3738 $x14327)))
-(let (($x14333 (not $x14330)))
-(let (($x13747 (and $x10138 $x14211 $x12635 $x3840)))
-(let ((?x10215 (* (- 1) b_S_max_o_u4$)))
-(let ((?x10220 (+ ?0 ?x10215)))
-(let (($x10221 (<= ?x10220 0)))
-(let (($x12658 (and $x10138 $x10221 $x12635 $x3840)))
-(let ((?x2232 (* 65536 65536)))
-(let ((?x2237 (- ?x2232 1)))
-(let (($x2238 (= b_S_max_o_u4$ ?x2237)))
-(let ((@x7014 (monotonicity (rewrite (= (* (- 1) 1) (- 1))) (= (+ 4294967296 (* (- 1) 1)) (+ 4294967296 (- 1))))))
-(let ((@x7019 (trans @x7014 (rewrite (= (+ 4294967296 (- 1)) 4294967295)) (= (+ 4294967296 (* (- 1) 1)) 4294967295))))
-(let ((@x7011 (trans (monotonicity (rewrite (= ?x2232 4294967296)) (= ?x2237 (- 4294967296 1))) (rewrite (= (- 4294967296 1) (+ 4294967296 (* (- 1) 1)))) (= ?x2237 (+ 4294967296 (* (- 1) 1))))))
-(let ((@x7024 (monotonicity (trans @x7011 @x7019 (= ?x2237 4294967295)) (= $x2238 (= b_S_max_o_u4$ 4294967295)))))
-(let ((@x7025 (mp (asserted $x2238) @x7024 (= b_S_max_o_u4$ 4294967295))))
-(let ((@x13415 (trans (monotonicity @x7025 (= ?x10215 (* (- 1) 4294967295))) (rewrite (= (* (- 1) 4294967295) (- 4294967295))) (= ?x10215 (- 4294967295)))))
-(let ((@x12861 (trans (monotonicity @x13415 (= ?x10220 (+ ?0 (- 4294967295)))) (rewrite (= (+ ?0 (- 4294967295)) (+ (- 4294967295) ?0))) (= ?x10220 (+ (- 4294967295) ?0)))))
-(let ((@x13817 (trans (monotonicity @x12861 (= $x10221 (<= (+ (- 4294967295) ?0) 0))) (rewrite (= (<= (+ (- 4294967295) ?0) 0) $x14211)) (= $x10221 $x14211))))
-(let ((@x12741 (monotonicity (monotonicity @x13817 (= (and $x10138 $x10221 $x12635) $x13586)) (= (not (and $x10138 $x10221 $x12635)) $x13963))))
-(let ((@x12841 (quant-intro (monotonicity @x12741 (= (or (not (and $x10138 $x10221 $x12635)) $x12646) $x13836)) (= $x12652 $x13163))))
-(let ((@x12999 (monotonicity (monotonicity @x12841 (= $x12655 $x13974)) (quant-intro (monotonicity @x13817 (= $x12658 $x13747)) (= $x12661 $x12742)) (= $x12664 $x14165))))
-(let ((@x13331 (monotonicity (monotonicity @x12841 @x12999 (= $x12667 $x13256)) (= $x14289 $x13521))))
-(let ((@x13632 (monotonicity (monotonicity @x13817 (= (and $x10138 $x10221 $x12525) $x14023)) (= (not (and $x10138 $x10221 $x12525)) $x12802))))
-(let ((@x13024 (quant-intro (monotonicity @x13632 (= (or (not (and $x10138 $x10221 $x12525)) $x12536) $x13633)) (= $x12542 $x13130))))
-(let ((@x14205 (monotonicity @x13024 (monotonicity (monotonicity @x13024 (= $x12545 $x13025)) (= $x12559 $x12874)) (= $x12562 $x13199))))
-(let ((@x14110 (monotonicity (monotonicity @x7025 (= ?x12401 (+ 4294967295 ?x12400))) (= $x12497 (>= (+ 4294967295 ?x12400) 1)))))
-(let ((@x13814 (trans @x14110 (rewrite (= (>= (+ 4294967295 ?x12400) 1) $x13856)) (= $x12497 $x13856))))
-(let ((@x13698 (monotonicity (monotonicity (monotonicity @x13814 (= $x12508 $x13815)) (= $x12511 $x13880)) (monotonicity (monotonicity @x14205 (= $x12565 $x13574)) (= $x12568 $x13045)) (= $x12571 $x14132))))
-(let ((@x13379 (monotonicity (monotonicity @x13814 @x13698 (= $x12574 $x13699)) (= $x12598 $x13117))))
-(let ((@x13206 (monotonicity (monotonicity @x13814 @x13698 (= $x12574 $x13699)) (= $x12577 $x13338))))
-(let ((@x13797 (monotonicity (monotonicity (monotonicity @x13206 (= $x12580 $x13207)) (= $x12583 $x14076)) (= $x12586 $x14119))))
-(let ((@x12956 (monotonicity (monotonicity @x13797 (= $x12589 $x13844)) @x13379 (= $x12601 $x13324))))
-(let ((@x14003 (monotonicity (monotonicity (monotonicity @x12956 (= $x12604 $x12957)) (= $x12607 $x13000)) (= $x12610 $x13827))))
-(let ((@x13356 (monotonicity (monotonicity (monotonicity @x14003 (= $x12613 $x14170)) (= $x12616 $x14053)) @x13331 (= $x14294 $x13922))))
-(let ((@x13685 (monotonicity (monotonicity @x13817 (= (and $x10138 $x10221 $x12415) $x13128)) (= (not (and $x10138 $x10221 $x12415)) $x13111))))
-(let ((@x13593 (quant-intro (monotonicity @x13685 (= (or (not (and $x10138 $x10221 $x12415)) $x12425) $x12774)) (= $x12431 $x13341))))
-(let ((@x13192 (monotonicity (monotonicity @x7025 (= ?x12401 (+ 4294967295 ?x12400))) (= $x12399 (>= (+ 4294967295 ?x12400) 0)))))
-(let ((@x13397 (trans @x13192 (rewrite (= (>= (+ 4294967295 ?x12400) 0) $x13193)) (= $x12399 $x13193))))
-(let ((@x13988 (rewrite (= (>= (+ 4294967295 (* (- 1) v_b_SL_H_witness_G_0$)) 0) $x12834))))
-(let (($x13515 (= (+ b_S_max_o_u4$ (* (- 1) v_b_SL_H_witness_G_0$)) (+ 4294967295 (* (- 1) v_b_SL_H_witness_G_0$)))))
-(let ((@x12807 (monotonicity (monotonicity @x7025 $x13515) (= $x12391 (>= (+ 4294967295 (* (- 1) v_b_SL_H_witness_G_0$)) 0)))))
-(let (($x13742 (= (+ b_S_max_o_u1$ (* (- 1) v_b_L_H_max_G_1$)) (+ 255 (* (- 1) v_b_L_H_max_G_1$)))))
-(let ((@x12798 (monotonicity (monotonicity (asserted (= b_S_max_o_u1$ 255)) $x13742) (= $x12383 (>= (+ 255 (* (- 1) v_b_L_H_max_G_1$)) 0)))))
-(let ((@x13309 (trans @x12798 (rewrite (= (>= (+ 255 (* (- 1) v_b_L_H_max_G_1$)) 0) $x12799)) (= $x12383 $x12799))))
-(let ((@x13590 (monotonicity @x13309 (trans @x12807 @x13988 (= $x12391 $x12834)) @x13397 @x13593 (= $x12441 $x13242))))
-(let ((@x13983 (monotonicity (monotonicity @x13590 (= $x12444 $x13591)) @x13356 (= $x14297 $x13357))))
-(let ((@x13411 (monotonicity (monotonicity @x13817 (= (and $x10138 $x10221 $x12357) $x14020)) (= (not (and $x10138 $x10221 $x12357)) $x13679))))
-(let ((@x14159 (quant-intro (monotonicity @x13411 (= (or (not (and $x10138 $x10221 $x12357)) $x12367) $x12918)) (= $x12374 $x12941))))
-(let ((@x13693 (monotonicity (monotonicity @x14159 (= $x12377 $x13900)) (monotonicity @x13983 (= $x14300 $x12756)) (= $x14303 $x12819))))
-(let ((@x13179 (monotonicity (monotonicity @x14159 @x13693 (= $x14306 $x13702)) (= $x14309 $x13223))))
-(let ((@x13194 (monotonicity (monotonicity (monotonicity @x13179 (= $x14312 $x12832)) (= $x14315 $x13861)) (= $x14318 $x12808))))
-(let ((@x13761 (monotonicity (monotonicity (monotonicity @x13194 (= $x14321 $x13195)) (= $x14324 $x13550)) (= $x14327 $x13361))))
-(let ((@x13603 (monotonicity (monotonicity @x13761 (= $x14330 (and $x3738 $x13361))) (= $x14333 $x13725))))
-(let (($x12625 (and b_S_position_n_marker$ $x12404 $x12389 $x3818 $x3820 $x3822 $x3824)))
-(let (($x12628 (not $x12625)))
-(let (($x12670 (or $x12628 $x12667)))
-(let (($x12673 (and b_S_position_n_marker$ $x12670)))
-(let (($x12676 (or $x12622 $x12673)))
-(let (($x12679 (and $x12616 $x12676)))
-(let (($x12447 (and $x12404 $x12389 $x3886 $x3806 $x3699 $x3893 $x3894 $x3895 $x3896 $x3897 $x3898)))
-(let (($x12450 (not $x12447)))
-(let (($x12682 (or $x12444 $x12450 $x12679)))
-(let (($x12685 (and $x8667 $x3769 $x12682)))
-(let (($x12688 (or $x12377 $x12685)))
-(let (($x12691 (and $x12374 $x12688)))
-(let (($x12694 (or $x12351 $x12691)))
-(let (($x12697 (and $x12348 $x12694)))
-(let (($x12700 (or $x10031 $x12697)))
-(let (($x12703 (and $x3740 $x3743 $x12700)))
-(let (($x12706 (or $x10048 $x12703)))
-(let (($x12709 (and $x3740 $x3741 $x12706)))
-(let (($x12712 (or $x10065 $x12709)))
-(let (($x12715 (and $x3738 $x12712)))
-(let (($x12718 (not $x12715)))
-(let ((@x13981 (iff-true (asserted b_S_position_n_marker$) (= b_S_position_n_marker$ true))))
-(let ((@x14267 (monotonicity @x13981 (= $x12625 (and true $x12404 $x12389 $x3818 $x3820 $x3822 $x3824)))))
-(let ((@x14272 (trans @x14267 (rewrite (= (and true $x12404 $x12389 $x3818 $x3820 $x3822 $x3824) $x14268)) (= $x12625 $x14268))))
-(let ((@x14278 (monotonicity (monotonicity @x14272 (= $x12628 $x14273)) (= $x12670 (or $x14273 $x12667)))))
-(let ((@x14285 (trans (monotonicity @x13981 @x14278 (= $x12673 (and true (or $x14273 $x12667)))) (rewrite (= (and true (or $x14273 $x12667)) (or $x14273 $x12667))) (= $x12673 (or $x14273 $x12667)))))
-(let ((@x14293 (trans (monotonicity @x14285 (= $x12676 (or $x12622 (or $x14273 $x12667)))) (rewrite (= (or $x12622 (or $x14273 $x12667)) $x14289)) (= $x12676 $x14289))))
-(let (($x14258 (= (and $x12404 $x12389 $x3886 $x3806 true $x3893 $x3894 $x3895 $x3896 $x3897 $x3898) $x14257)))
-(let (($x14255 (= $x12447 (and $x12404 $x12389 $x3886 $x3806 true $x3893 $x3894 $x3895 $x3896 $x3897 $x3898))))
-(let ((@x14261 (trans (monotonicity (iff-true @x10104 (= $x3699 true)) $x14255) (rewrite $x14258) (= $x12447 $x14257))))
-(let ((@x14299 (monotonicity (monotonicity @x14261 (= $x12450 $x14262)) (monotonicity @x14293 (= $x12679 $x14294)) (= $x12682 $x14297))))
-(let ((@x14308 (monotonicity (monotonicity (monotonicity @x14299 (= $x12685 $x14300)) (= $x12688 $x14303)) (= $x12691 $x14306))))
-(let ((@x14317 (monotonicity (monotonicity (monotonicity @x14308 (= $x12694 $x14309)) (= $x12697 $x14312)) (= $x12700 $x14315))))
-(let ((@x14326 (monotonicity (monotonicity (monotonicity @x14317 (= $x12703 $x14318)) (= $x12706 $x14321)) (= $x12709 $x14324))))
-(let ((@x14335 (monotonicity (monotonicity (monotonicity @x14326 (= $x12712 $x14327)) (= $x12715 $x14330)) (= $x12718 $x14333))))
-(let ((@x12637 (monotonicity (rewrite (= (<= v_b_P_H_len$ ?0) $x12631)) (= $x9165 $x12635))))
-(let ((@x10223 (rewrite (= $x1344 $x10221))))
-(let ((@x12663 (quant-intro (monotonicity @x10140 @x10223 @x12637 (= $x9202 $x12658)) (= $x9207 $x12661))))
-(let ((@x12640 (monotonicity @x10140 @x10223 @x12637 (= (and $x1212 $x1344 $x9165) (and $x10138 $x10221 $x12635)))))
-(let ((@x12643 (monotonicity @x12640 (= (not (and $x1212 $x1344 $x9165)) (not (and $x10138 $x10221 $x12635))))))
-(let ((@x12651 (monotonicity @x12643 (rewrite (= $x3837 $x12646)) (= $x9180 (or (not (and $x10138 $x10221 $x12635)) $x12646)))))
-(let ((@x12657 (monotonicity (quant-intro @x12651 (= $x9185 $x12652)) (= (not $x9185) $x12655))))
-(let ((@x12669 (monotonicity (quant-intro @x12651 (= $x9185 $x12652)) (monotonicity @x12657 @x12663 (= $x9228 $x12664)) (= $x9233 $x12667))))
-(let ((@x12390 (rewrite (= $x3776 $x12389))))
-(let ((@x12406 (rewrite (= $x3783 $x12404))))
-(let ((@x12630 (monotonicity (monotonicity @x12406 @x12390 (= $x9159 $x12625)) (= (not $x9159) $x12628))))
-(let ((@x12675 (monotonicity (monotonicity @x12630 @x12669 (= $x9240 $x12670)) (= $x9245 $x12673))))
-(let ((@x12621 (monotonicity @x12406 @x12390 (rewrite (= $x4012 $x12453)) (= (and $x3783 $x3776 $x4012) $x12619))))
-(let ((@x12678 (monotonicity (monotonicity @x12621 (= (not (and $x3783 $x3776 $x4012)) $x12622)) @x12675 (= $x9963 $x12676))))
-(let ((@x12555 (monotonicity (rewrite (= (<= v_b_P_H_len$ v_b_SL_H_witness_G_1$) $x12550)) (= $x9687 $x12553))))
-(let ((@x12527 (monotonicity (rewrite (= (<= v_b_L_H_p_G_1$ ?0) $x12521)) (= $x9663 $x12525))))
-(let ((@x12533 (monotonicity (monotonicity @x10140 @x10223 @x12527 (= $x9669 (and $x10138 $x10221 $x12525))) (= (not $x9669) (not (and $x10138 $x10221 $x12525))))))
-(let ((@x12541 (monotonicity @x12533 (rewrite (= $x3970 $x12536)) (= $x9678 (or (not (and $x10138 $x10221 $x12525)) $x12536)))))
-(let ((@x12547 (monotonicity (quant-intro @x12541 (= $x9683 $x12542)) (= (not $x9683) $x12545))))
-(let ((@x12561 (monotonicity @x12547 (monotonicity @x12555 (= $x9690 $x12556)) (= $x9718 $x12559))))
-(let ((@x12567 (monotonicity (monotonicity (rewrite (= $x3967 $x12514)) (= (not $x3967) $x12518)) (monotonicity (quant-intro @x12541 (= $x9683 $x12542)) @x12561 (= $x9723 $x12562)) (= $x9730 $x12565))))
-(let ((@x12487 (rewrite (= $x3943 $x12486))))
-(let ((@x12510 (monotonicity (rewrite (= $x9606 $x12494)) (rewrite (= $x9615 $x12497)) (rewrite (= $x9623 $x12500)) (rewrite (= $x3961 $x12505)) @x12487 (= $x9657 $x12508))))
-(let ((@x12573 (monotonicity (monotonicity @x12510 (= (not $x9657) $x12511)) (monotonicity (rewrite (= $x3967 $x12514)) @x12567 (= $x9735 $x12568)) (= $x9742 $x12571))))
-(let ((@x12576 (monotonicity (rewrite (= $x9606 $x12494)) (rewrite (= $x9615 $x12497)) @x12573 (= $x9750 $x12574))))
-(let ((@x12594 (monotonicity @x12406 @x12390 (rewrite (= $x3992 $x12471)) @x12487 (= $x9858 $x12592))))
-(let ((@x12600 (monotonicity (monotonicity @x12594 (= (not $x9858) $x12595)) @x12576 (= $x9874 $x12598))))
-(let ((@x12493 (monotonicity (monotonicity @x12406 @x12487 (= $x9595 $x12488)) (= (not $x9595) $x12491))))
-(let ((@x12582 (monotonicity (monotonicity @x12493 @x12576 (= $x9759 $x12577)) (= $x9767 $x12580))))
-(let ((@x12481 (monotonicity @x12406 @x12390 (monotonicity (rewrite (= $x3992 $x12471)) (= $x9497 $x12476)) (= $x9511 $x12479))))
-(let ((@x12591 (monotonicity (monotonicity @x12481 (= (not $x9511) $x12482)) (monotonicity (monotonicity @x12582 (= $x9776 $x12583)) (= $x9784 $x12586)) (= $x9793 $x12589))))
-(let ((@x12470 (monotonicity (monotonicity @x12406 @x12390 (= (and $x3923 $x3926 $x3783 $x3776) $x12465)) (= (not (and $x3923 $x3926 $x3783 $x3776)) $x12468))))
-(let ((@x12606 (monotonicity @x12470 (monotonicity @x12591 @x12600 (= $x9879 $x12601)) (= $x9886 $x12604))))
-(let ((@x12615 (monotonicity (monotonicity (monotonicity @x12606 (= $x9894 $x12607)) (= $x9902 $x12610)) (= $x9910 $x12613))))
-(let ((@x12461 (monotonicity @x12406 @x12390 (monotonicity (rewrite (= $x4012 $x12453)) (= $x9465 $x12456)) (= $x9479 $x12459))))
-(let ((@x12618 (monotonicity (monotonicity @x12461 (= (not $x9479) $x12462)) @x12615 (= $x9919 $x12616))))
-(let ((@x12452 (monotonicity (monotonicity @x12406 @x12390 (= $x9434 $x12447)) (= $x9974 $x12450))))
-(let ((@x12440 (monotonicity (rewrite (= (<= v_b_P_H_len$ v_b_SL_H_witness_G_0$) $x12435)) (= $x8960 $x12438))))
-(let ((@x12417 (monotonicity (rewrite (= (<= v_b_L_H_p_G_0$ ?0) $x12411)) (= $x8936 $x12415))))
-(let ((@x12423 (monotonicity (monotonicity @x10140 @x10223 @x12417 (= $x8942 (and $x10138 $x10221 $x12415))) (= (not $x8942) (not (and $x10138 $x10221 $x12415))))))
-(let ((@x12430 (monotonicity @x12423 (rewrite (= $x3788 $x12425)) (= $x8951 (or (not (and $x10138 $x10221 $x12415)) $x12425)))))
-(let ((@x12443 (monotonicity (rewrite (= $x3772 $x12381)) (rewrite (= $x3773 $x12383)) @x12390 (rewrite (= $x3777 $x12391)) (rewrite (= $x3780 $x12397)) (rewrite (= $x3781 $x12399)) @x12406 (rewrite (= $x3785 $x12407)) (quant-intro @x12430 (= $x8956 $x12431)) @x12440 (= $x9032 $x12441))))
-(let ((@x12684 (monotonicity (monotonicity @x12443 (= (not $x9032) $x12444)) @x12452 (monotonicity @x12618 @x12678 (= $x9968 $x12679)) (= $x9991 $x12682))))
-(let ((@x12362 (monotonicity @x10140 @x10223 (monotonicity (rewrite (= $x8887 $x12354)) (= $x8888 $x12357)) (= $x8899 (and $x10138 $x10221 $x12357)))))
-(let ((@x12373 (monotonicity (monotonicity @x12362 (= (not $x8899) (not (and $x10138 $x10221 $x12357)))) (rewrite (= $x3766 $x12367)) (= $x8908 (or (not (and $x10138 $x10221 $x12357)) $x12367)))))
-(let ((@x12379 (monotonicity (quant-intro @x12373 (= $x8913 $x12374)) (= (not $x8913) $x12377))))
-(let ((@x12690 (monotonicity @x12379 (monotonicity @x12684 (= $x9999 $x12685)) (= $x10008 $x12688))))
-(let ((@x12696 (monotonicity (monotonicity (rewrite (= $x3761 $x12348)) (= (not $x3761) $x12351)) (monotonicity (quant-intro @x12373 (= $x8913 $x12374)) @x12690 (= $x10013 $x12691)) (= $x10020 $x12694))))
-(let ((@x12702 (monotonicity (monotonicity (rewrite (= $x3761 $x12348)) @x12696 (= $x10025 $x12697)) (= $x10032 $x12700))))
-(let ((@x12711 (monotonicity (monotonicity (monotonicity @x12702 (= $x10040 $x12703)) (= $x10049 $x12706)) (= $x10057 $x12709))))
-(let ((@x12720 (monotonicity (monotonicity (monotonicity @x12711 (= $x10066 $x12712)) (= $x10071 $x12715)) (= (not $x10071) $x12718))))
-(let ((@x12721 (mp (not-or-elim (mp (asserted $x4036) @x10085 (not $x10078)) (not $x10071)) @x12720 $x12718)))
-(let ((@x20468 (mp (mp (mp~ (mp (mp @x12721 @x14335 $x14333) @x13603 $x13725) @x16564 $x16562) @x16835 $x16833) @x20467 $x20465)))
-(let ((@x21274 (mp @x20468 (monotonicity @x21270 (= $x20465 (or $x10065 $x21268))) (or $x10065 $x21268))))
-(let ((@x24559 (unit-resolution @x21274 (lemma (unit-resolution @x23120 @x23099 @x23095 @x23071 @x23078 false) $x3738) $x21268)))
-(let ((@x24561 (unit-resolution (def-axiom (or $x21262 $x16242 $x16245 $x21256)) (unit-resolution (def-axiom (or $x21265 $x21259)) @x24559 $x21259) $x21259)))
-(let ((@x24567 (unit-resolution @x24561 (unit-resolution (def-axiom (or $x23304 $x3741)) (lemma @x23396 $x23305) $x3741) @x23251 $x21256)))
-(let ((@x24570 (unit-resolution (def-axiom (or $x21250 $x16242 $x16251 $x21244)) @x23251 (unit-resolution (def-axiom (or $x21253 $x21247)) @x24567 $x21247) (or $x16251 $x21244))))
-(let ((@x25304 (unit-resolution (def-axiom (or $x21241 $x21235)) (unit-resolution @x24570 (lemma @x23543 $x3743) $x21244) $x21235)))
-(let ((@x25314 (unit-resolution (unit-resolution (def-axiom (or $x21238 $x12351 $x21232)) @x25304 $x21235) (lemma ((_ th-lemma arith farkas 1 1) @x10095 (hypothesis $x12351) false) $x12348) $x21232)))
-(let (($x16266 (not $x16265)))
-(let ((@x24547 (hypothesis $x20036)))
-(let (($x16263 (>= ?v0!13 0)))
-(let ((@x24551 ((_ th-lemma arith eq-propagate 0 0) (unit-resolution (def-axiom (or $x20031 $x16263)) @x24547 $x16263) (unit-resolution (def-axiom (or $x20031 $x16266)) @x24547 $x16266) (= ?v0!13 0))))
-(let ((@x24574 (monotonicity (monotonicity @x24551 (= (b_S_idx$ ?x3680 ?v0!13 b_T_T_u1$) ?x3739)) (= ?x16270 ?x3746))))
-(let ((@x24572 (unit-resolution (def-axiom (or $x21241 $x3747)) (unit-resolution @x24570 (lemma @x23543 $x3743) $x21244) $x3747)))
-(let ((@x24591 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= v_b_L_H_max_G_0$ ?x16270)) $x16273)) (unit-resolution (def-axiom (or $x20031 (not $x16273))) @x24547 (not $x16273)) (trans @x24572 (symm @x24574 (= ?x3746 ?x16270)) (= v_b_L_H_max_G_0$ ?x16270)) false)))
-(let ((@x25316 (unit-resolution (def-axiom (or $x21226 $x20036 $x21220)) (lemma @x24591 $x20031) (unit-resolution (def-axiom (or $x21229 $x21223)) @x25314 $x21223) $x21220)))
-(let ((@x25324 (unit-resolution (def-axiom (or $x21214 $x8666 $x16288 $x21208)) @x10095 (or $x21214 $x16288 $x21208))))
-(let ((@x25326 (unit-resolution @x25324 (mp @x24572 (symm (commutativity (= $x3769 $x3747)) (= $x3747 $x3769)) $x3769) (or $x21214 $x21208))))
-(let ((@x25327 (unit-resolution @x25326 (unit-resolution (def-axiom (or $x21217 $x21211)) @x25316 $x21211) $x21208)))
-(let ((@x25328 (unit-resolution (def-axiom (or $x21205 $x12397)) @x25327 $x12397)))
-(let ((@x25333 (unit-resolution (def-axiom (or $x21205 $x21041)) @x25327 $x21041)))
-(let (($x23869 (<= (+ v_b_L_H_p_G_0$ (* (- 1) ?v0!15)) 0)))
-(let (($x23793 (<= (+ v_b_L_H_max_G_1$ (* (- 1) v_b_S_result_G_0$)) 0)))
-(let (($x23789 (= v_b_L_H_max_G_1$ v_b_S_result_G_0$)))
-(let ((@x24013 (symm (unit-resolution (def-axiom (or $x21193 $x3824)) (hypothesis $x21196) $x3824) $x23789)))
-(let (($x21519 (not $x16760)))
-(let ((@x23878 (trans (hypothesis $x3794) (symm (hypothesis $x3824) $x23789) (= ?x3793 v_b_S_result_G_0$))))
-(let (($x23841 (not (= ?x3793 v_b_S_result_G_0$))))
-(let (($x23846 (or $x21178 $x20219 $x20374 $x12435 $x23841)))
-(let (($x23737 (>= (+ v_b_SL_H_witness_G_0$ (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x23847 (or $x21178 (or $x20219 $x20374 $x23737 $x23841))))
-(let (($x23747 (= (>= (+ (* (- 1) v_b_P_H_len$) v_b_SL_H_witness_G_0$) 0) $x12435)))
-(let (($x23745 (= $x23737 (>= (+ (* (- 1) v_b_P_H_len$) v_b_SL_H_witness_G_0$) 0))))
-(let (($x23742 (= (+ v_b_SL_H_witness_G_0$ (* (- 1) v_b_P_H_len$)) (+ (* (- 1) v_b_P_H_len$) v_b_SL_H_witness_G_0$))))
-(let ((@x23750 (trans (monotonicity (rewrite $x23742) $x23745) (rewrite $x23747) (= $x23737 $x12435))))
-(let ((@x23845 (monotonicity @x23750 (= (or $x20219 $x20374 $x23737 $x23841) (or $x20219 $x20374 $x12435 $x23841)))))
-(let ((@x23855 (trans (monotonicity @x23845 (= $x23847 (or $x21178 (or $x20219 $x20374 $x12435 $x23841)))) (rewrite (= (or $x21178 (or $x20219 $x20374 $x12435 $x23841)) $x23846)) (= $x23847 $x23846))))
-(let ((@x23883 (unit-resolution (mp ((_ quant-inst v_b_SL_H_witness_G_0$) $x23847) @x23855 $x23846) (hypothesis $x12834) (hypothesis $x12438) (hypothesis $x12389) (hypothesis $x21173) @x23878 false)))
-(let ((@x24019 (unit-resolution (lemma @x23883 (or $x21178 $x20374 $x12435 $x20219 $x20379 $x20358)) (unit-resolution (def-axiom (or $x21193 $x3824)) (hypothesis $x21196) $x3824) (hypothesis $x12438) (hypothesis $x12389) (hypothesis $x3794) (hypothesis $x12834) $x21178)))
-(let ((@x24021 (unit-resolution (def-axiom (or $x21190 $x20298 $x21184)) (unit-resolution (def-axiom (or $x21181 $x21173)) @x24019 $x21181) (unit-resolution (def-axiom (or $x21193 $x21187)) (hypothesis $x21196) $x21187) $x20298)))
-(let (($x24008 (or (not (>= (+ v_b_L_H_max_G_1$ (* (- 1) ?x16481)) 0)) $x16760 (not $x23793))))
-(let ((@x24005 ((_ th-lemma arith farkas -1 1 1) (hypothesis (>= (+ v_b_L_H_max_G_1$ (* (- 1) ?x16481)) 0)) (hypothesis $x21519) (hypothesis $x23793) false)))
-(let ((@x24023 (unit-resolution (lemma @x24005 $x24008) (unit-resolution (def-axiom (or $x20293 $x21519)) @x24021 $x21519) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x23789) $x23793)) @x24013 $x23793) (not (>= (+ v_b_L_H_max_G_1$ (* (- 1) ?x16481)) 0)))))
-(let (($x23889 (>= (+ v_b_L_H_max_G_1$ (* (- 1) ?x16481)) 0)))
-(let (($x23897 (or $x21046 $x20277 $x20278 $x23869 $x23889)))
-(let (($x23835 (<= (+ ?x16481 (* (- 1) v_b_L_H_max_G_1$)) 0)))
-(let (($x23815 (>= (+ ?v0!15 ?x12400) 0)))
-(let (($x23898 (or $x21046 (or $x20277 $x20278 $x23815 $x23835))))
-(let (($x23874 (= (+ ?x16481 (* (- 1) v_b_L_H_max_G_1$)) (+ (* (- 1) v_b_L_H_max_G_1$) ?x16481))))
-(let ((@x23887 (monotonicity (rewrite $x23874) (= $x23835 (<= (+ (* (- 1) v_b_L_H_max_G_1$) ?x16481) 0)))))
-(let ((@x23893 (trans @x23887 (rewrite (= (<= (+ (* (- 1) v_b_L_H_max_G_1$) ?x16481) 0) $x23889)) (= $x23835 $x23889))))
-(let ((@x23867 (monotonicity (rewrite (= (+ ?v0!15 ?x12400) (+ ?x12400 ?v0!15))) (= $x23815 (>= (+ ?x12400 ?v0!15) 0)))))
-(let ((@x23872 (trans @x23867 (rewrite (= (>= (+ ?x12400 ?v0!15) 0) $x23869)) (= $x23815 $x23869))))
-(let ((@x23896 (monotonicity @x23872 @x23893 (= (or $x20277 $x20278 $x23815 $x23835) (or $x20277 $x20278 $x23869 $x23889)))))
-(let ((@x23906 (trans (monotonicity @x23896 (= $x23898 (or $x21046 (or $x20277 $x20278 $x23869 $x23889)))) (rewrite (= (or $x21046 (or $x20277 $x20278 $x23869 $x23889)) $x23897)) (= $x23898 $x23897))))
-(let ((@x24028 (unit-resolution (mp ((_ quant-inst ?v0!15) $x23898) @x23906 $x23897) (hypothesis $x21041) (unit-resolution (def-axiom (or $x20293 $x16473)) @x24021 $x16473) (unit-resolution (def-axiom (or $x20293 $x16474)) @x24021 $x16474) (or $x23869 $x23889))))
-(let ((@x24031 ((_ th-lemma arith farkas -1 1 1) (unit-resolution (def-axiom (or $x20293 $x16743)) @x24021 $x16743) (unit-resolution @x24028 @x24023 $x23869) (unit-resolution (def-axiom (or $x21193 $x12453)) (hypothesis $x21196) $x12453) false)))
-(let ((@x25334 (unit-resolution (lemma @x24031 (or $x21193 $x21046 $x12435 $x20219 $x20379 $x20374)) @x25333 (unit-resolution (def-axiom (or $x21205 $x12438)) @x25327 $x12438) (unit-resolution (def-axiom (or $x21205 $x12389)) @x25327 $x12389) (unit-resolution (def-axiom (or $x21205 $x3794)) @x25327 $x3794) (unit-resolution (def-axiom (or $x21205 $x12834)) @x25327 $x12834) $x21193)))
-(let ((@x25336 (unit-resolution (def-axiom (or $x21202 $x21162 $x21196)) (unit-resolution (def-axiom (or $x21205 $x21199)) @x25327 $x21199) @x25334 $x21162)))
-(let ((@x25337 (unit-resolution (def-axiom (or $x21159 $x12456)) @x25336 $x12456)))
-(let ((@x25341 (mp @x23336 (symm (monotonicity @x24339 (= $x23297 $x23045)) (= $x23045 $x23297)) $x23297)))
-(let (($x24098 (or $x23330 $x21687 $x22190 $x23298 $x20375 $x12453 $x24083)))
-(let (($x24080 (>= (+ v_b_L_H_p_G_0$ (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x24099 (or $x23330 (or $x21687 $x22190 $x23298 $x20375 $x24080 $x24083))))
-(let (($x24096 (= (or $x21687 $x22190 $x23298 $x20375 $x24080 $x24083) (or $x21687 $x22190 $x23298 $x20375 $x12453 $x24083))))
-(let ((@x24092 (rewrite (= (>= (+ (* (- 1) v_b_P_H_len$) v_b_L_H_p_G_0$) 0) $x12453))))
-(let (($x24086 (= (+ v_b_L_H_p_G_0$ (* (- 1) v_b_P_H_len$)) (+ (* (- 1) v_b_P_H_len$) v_b_L_H_p_G_0$))))
-(let ((@x24090 (monotonicity (rewrite $x24086) (= $x24080 (>= (+ (* (- 1) v_b_P_H_len$) v_b_L_H_p_G_0$) 0)))))
-(let ((@x24103 (monotonicity (monotonicity (trans @x24090 @x24092 (= $x24080 $x12453)) $x24096) (= $x24099 (or $x23330 (or $x21687 $x22190 $x23298 $x20375 $x12453 $x24083))))))
-(let ((@x24107 (trans @x24103 (rewrite (= (or $x23330 (or $x21687 $x22190 $x23298 $x20375 $x12453 $x24083)) $x24098)) (= $x24099 $x24098))))
-(let ((@x24142 (unit-resolution (mp ((_ quant-inst v_b_S_s$ v_b_P_H_arr$ (b_S_ptr$ ?x3678 ?x21715) v_b_P_H_len$ v_b_L_H_p_G_0$ b_T_T_u1$) $x24099) @x24107 $x24098) @x19388 @x5093 @x10104 (hypothesis $x12397) (hypothesis $x12456) (hypothesis $x23297) (hypothesis $x24082) false)))
-(let ((@x25343 (unit-resolution (lemma @x24142 (or $x24083 $x20375 $x12453 $x23298)) @x25341 (or $x24083 $x20375 $x12453))))
-(let ((@x25345 (unit-resolution (def-axiom (or $x24082 $x3924)) (unit-resolution @x25343 @x25337 @x25328 $x24083) $x3924)))
-(let ((@x25354 (unit-resolution (hypothesis $x24195) (mp @x25345 (symm @x25350 (= $x3924 $x24194)) $x24194) false)))
-(let ((@x25215 (unit-resolution (def-axiom (or $x24228 $x24195 $x24226)) (unit-resolution (lemma @x25354 (or $x24194 (not $x23973))) @x25156 $x24194) (or $x24228 $x24226))))
-(let ((@x25214 (unit-resolution (def-axiom (or (not $x23994) $x16330 $x23984)) @x25032 (or (not $x23994) $x23984))))
-(let ((@x25219 (unit-resolution @x25214 (unit-resolution ((_ quant-inst (b_S_idx$ ?x3680 v_b_L_H_p_G_0$ b_T_T_u1$) b_T_T_u1$) (or (not $x20961) $x23994)) @x20966 $x23994) $x23984)))
-(let ((@x25248 (trans (monotonicity (symm @x25156 (= ?x23972 ?x3922)) (= (b_S_typ$ ?x23972) ?x23986)) @x25219 (= (b_S_typ$ ?x23972) b_T_T_u1$))))
-(let ((@x25302 (trans (monotonicity @x25248 (= (b_S_kind_n_of$ (b_S_typ$ ?x23972)) ?x22173)) @x23477 $x24198)))
-(let ((@x25229 (monotonicity (symm (monotonicity @x25156 (= ?x23936 ?x24200)) (= ?x24200 ?x23936)) (= $x24201 $x24081))))
-(let (($x24854 (not $x24081)))
-(let ((@x25388 (unit-resolution (def-axiom (or $x24082 $x24854)) (unit-resolution @x25343 @x25337 @x25328 $x24083) $x24854)))
-(let ((@x25238 (mp @x25388 (monotonicity (symm @x25229 (= $x24081 $x24201)) (= $x24854 $x24202)) $x24202)))
-(let ((?x25453 (+ ?x24037 ?x24269)))
-(let ((?x25458 (b_S_ptr$ b_T_T_u1$ ?x25453)))
-(let ((?x25435 (b_S_idx$ ?x22684 v_b_L_H_p_G_0$ b_T_T_u1$)))
-(let (($x25461 (= ?x25435 ?x25458)))
-(let (($x25464 (not $x25461)))
-(let (($x25467 (or (not (b_S_extent_n_hint$ ?x25435 ?x22684)) $x25464)))
-(let (($x25470 (not $x25467)))
-(let (($x25473 (or $x23217 $x25470)))
-(let (($x25447 (not (= ?x25435 (b_S_ptr$ b_T_T_u1$ (+ ?x24269 (* v_b_L_H_p_G_0$ ?x3652)))))))
-(let (($x25476 (= (or $x23217 (not (or (not (b_S_extent_n_hint$ ?x25435 ?x22684)) $x25447))) $x25473)))
-(let (($x25462 (= (= ?x25435 (b_S_ptr$ b_T_T_u1$ (+ ?x24269 (* v_b_L_H_p_G_0$ ?x3652)))) $x25461)))
-(let ((@x25452 (monotonicity (rewrite (= (* v_b_L_H_p_G_0$ ?x3652) ?x24037)) (= (+ ?x24269 (* v_b_L_H_p_G_0$ ?x3652)) (+ ?x24269 ?x24037)))))
-(let ((@x25457 (trans @x25452 (rewrite (= (+ ?x24269 ?x24037) ?x25453)) (= (+ ?x24269 (* v_b_L_H_p_G_0$ ?x3652)) ?x25453))))
-(let ((@x25460 (monotonicity @x25457 (= (b_S_ptr$ b_T_T_u1$ (+ ?x24269 (* v_b_L_H_p_G_0$ ?x3652))) ?x25458))))
-(let ((@x25469 (monotonicity (monotonicity (monotonicity @x25460 $x25462) (= $x25447 $x25464)) (= (or (not (b_S_extent_n_hint$ ?x25435 ?x22684)) $x25447) $x25467))))
-(let ((@x25472 (monotonicity @x25469 (= (not (or (not (b_S_extent_n_hint$ ?x25435 ?x22684)) $x25447)) $x25470))))
-(let ((@x25475 ((_ quant-inst (b_S_ptr$ ?x3678 ?x21715) v_b_L_H_p_G_0$ b_T_T_u1$) (or $x23217 (not (or (not (b_S_extent_n_hint$ ?x25435 ?x22684)) $x25447))))))
-(let ((@x25481 (mp @x25475 (trans (monotonicity @x25472 $x25476) (rewrite (= $x25473 $x25473)) $x25476) $x25473)))
-(let ((@x25407 (unit-resolution (def-axiom (or $x25467 $x25461)) (lemma (unit-resolution @x25481 @x18901 (hypothesis $x25467) false) $x25470) $x25461)))
-(let ((?x25308 (b_S_idx$ ?x23296 v_b_L_H_p_G_0$ b_T_T_u1$)))
-(let ((?x25309 (b_S_select_o_tm$ ?x3874 ?x25308)))
-(let (($x25310 (= (b_S_ts_n_emb$ ?x25309) ?x23296)))
-(let (($x25362 (or (not $x25310) (b_S_ts_n_is_n_volatile$ ?x25309) (not (b_S_ts_n_is_n_array_n_elt$ ?x25309)) (not (b_S_typed$ v_b_S_s$ ?x25308)))))
-(let (($x25363 (not $x25362)))
-(let (($x25293 (or $x24161 $x24152 $x20375 $x12453 $x25363)))
-(let (($x25294 (or $x24161 (or $x24152 $x20375 $x24080 $x25363))))
-(let ((@x25292 (monotonicity (trans @x24090 @x24092 (= $x24080 $x12453)) (= (or $x24152 $x20375 $x24080 $x25363) (or $x24152 $x20375 $x12453 $x25363)))))
-(let ((@x25384 (trans (monotonicity @x25292 (= $x25294 (or $x24161 (or $x24152 $x20375 $x12453 $x25363)))) (rewrite (= (or $x24161 (or $x24152 $x20375 $x12453 $x25363)) $x25293)) (= $x25294 $x25293))))
-(let ((@x25376 (unit-resolution (mp ((_ quant-inst v_b_S_s$ v_b_P_H_arr$ b_T_T_u1$ v_b_P_H_len$ v_b_L_H_p_G_0$) $x25294) @x25384 $x25293) @x18685 @x25328 @x25337 (lemma (unit-resolution (hypothesis $x24152) @x24253 false) $x24131) (hypothesis $x25362) false)))
-(let ((@x25585 (trans (trans @x23922 @x23269 (= ?x23206 ?x23203)) (symm @x24358 (= ?x23203 ?x3680)) (= ?x23206 ?x3680))))
-(let ((@x25593 (trans (symm @x25587 (= ?x24043 ?x23996)) (monotonicity @x25585 (= ?x23996 ?x3922)) (= ?x24043 ?x3922))))
-(let (($x25908 (>= (+ ?x24040 (* (- 1) (b_S_ref$ ?x24043))) 0)))
-(let ((?x25052 (+ ?x23612 ?x24037 (* (- 1) (b_S_ref$ ?x24043)))))
-(let (($x25064 (>= ?x25052 0)))
-(let (($x25050 (= ?x25052 0)))
-(let (($x21853 (not $x20968)))
-(let (($x25054 (or $x21853 $x25050)))
-(let ((@x25058 (monotonicity (rewrite (= (= (b_S_ref$ ?x24043) ?x24040) $x25050)) (= (or $x21853 (= (b_S_ref$ ?x24043) ?x24040)) $x25054))))
-(let ((@x25061 (trans @x25058 (rewrite (= $x25054 $x25054)) (= (or $x21853 (= (b_S_ref$ ?x24043) ?x24040)) $x25054))))
-(let ((@x25599 (unit-resolution (mp ((_ quant-inst b_T_T_u1$ (+ ?x23612 ?x24037)) (or $x21853 (= (b_S_ref$ ?x24043) ?x24040))) @x25061 $x25054) @x20973 $x25050)))
-(let ((@x25911 (unit-resolution ((_ th-lemma arith assign-bounds -1) (or $x25908 (not $x25064))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x25050) $x25064)) @x25599 $x25064) $x25908)))
-(let (($x25907 (<= (+ ?x24040 (* (- 1) (b_S_ref$ ?x24043))) 0)))
-(let (($x25063 (<= ?x25052 0)))
-(let ((@x25914 (unit-resolution ((_ th-lemma arith assign-bounds -1) (or $x25907 (not $x25063))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x25050) $x25063)) @x25599 $x25063) $x25907)))
-(let ((@x25925 (unit-resolution ((_ th-lemma arith triangle-eq) (or (= ?x24040 (b_S_ref$ ?x24043)) (not $x25907) (not $x25908))) @x25914 @x25911 (= ?x24040 (b_S_ref$ ?x24043)))))
-(let (($x25910 (>= (+ ?x24040 (* (- 1) ?x25453)) 0)))
-(let (($x23420 (<= (+ ?x21715 (* (- 1) ?x23186)) 0)))
-(let ((@x25567 (monotonicity (trans @x23269 (symm @x24358 (= ?x23203 ?x3680)) (= ?x3739 ?x3680)) (= ?x23186 ?x3681))))
-(let ((@x25574 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x21715 ?x23186)) $x23420)) (trans @x24327 (symm @x25567 (= ?x3681 ?x23186)) (= ?x21715 ?x23186)) $x23420)))
-(let (($x25491 (>= (+ ?x21715 (* (- 1) ?x24269)) 0)))
-(let ((@x25608 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x21715 ?x24269)) $x25491)) (symm (monotonicity @x24449 (= ?x24269 ?x21715)) (= ?x21715 ?x24269)) $x25491)))
-(let (($x24750 (<= (+ ?x23186 (* (- 1) ?x23612)) 0)))
-(let ((@x25581 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x23186 ?x23612)) $x24750)) (symm (monotonicity @x23922 (= ?x23612 ?x23186)) (= ?x23186 ?x23612)) $x24750)))
-(let ((@x25922 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1) (or $x25910 (not $x24750) (not $x25491) (not $x23420))) @x25581 @x25608 @x25574 $x25910)))
-(let (($x25909 (<= (+ ?x24040 (* (- 1) ?x25453)) 0)))
-(let (($x23421 (>= (+ ?x21715 (* (- 1) ?x23186)) 0)))
-(let ((@x25619 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x21715 ?x23186)) $x23421)) (trans @x24327 (symm @x25567 (= ?x3681 ?x23186)) (= ?x21715 ?x23186)) $x23421)))
-(let (($x25490 (<= (+ ?x21715 (* (- 1) ?x24269)) 0)))
-(let ((@x25631 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x21715 ?x24269)) $x25490)) (symm (monotonicity @x24449 (= ?x24269 ?x21715)) (= ?x21715 ?x24269)) $x25490)))
-(let (($x24751 (>= (+ ?x23186 (* (- 1) ?x23612)) 0)))
-(let ((@x25622 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x23186 ?x23612)) $x24751)) (symm (monotonicity @x23922 (= ?x23612 ?x23186)) (= ?x23186 ?x23612)) $x24751)))
-(let ((@x25916 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1 1) (or $x25909 (not $x24751) (not $x25490) (not $x23421))) @x25622 @x25631 @x25619 $x25909)))
-(let ((@x25951 (unit-resolution ((_ th-lemma arith triangle-eq) (or (= ?x24040 ?x25453) (not $x25909) (not $x25910))) @x25916 @x25922 (= ?x24040 ?x25453))))
-(let ((@x25927 (trans (trans (symm @x25951 (= ?x25453 ?x24040)) @x25925 (= ?x25453 (b_S_ref$ ?x24043))) (monotonicity @x25593 (= (b_S_ref$ ?x24043) ?x24124)) (= ?x25453 ?x24124))))
-(let ((@x25944 (trans (monotonicity @x24339 (= ?x25308 ?x25435)) (hypothesis $x25461) (= ?x25308 ?x25458))))
-(let ((@x25837 (monotonicity (trans @x25944 (monotonicity @x25927 (= ?x25458 ?x23972)) (= ?x25308 ?x23972)) (= ?x25309 ?x24200))))
-(let ((@x25955 (trans (monotonicity (symm @x25837 (= ?x24200 ?x25309)) (= ?x24203 (b_S_ts_n_emb$ ?x25309))) (unit-resolution (def-axiom (or $x25362 $x25310)) (lemma @x25376 $x25363) $x25310) (= ?x24203 ?x23296))))
-(let ((@x25957 (monotonicity (trans @x25955 @x23339 (= ?x24203 ?x3682)) (= (b_S_owner$ v_b_S_s$ ?x24203) ?x3684))))
-(let ((@x25971 (unit-resolution (hypothesis (not $x24212)) (trans @x25957 @x10097 $x24212) false)))
-(let ((@x25374 (unit-resolution (def-axiom (or $x24214 (not $x24212))) (unit-resolution (lemma @x25971 (or $x25464 $x24212)) @x25407 $x24212) $x24214)))
-(let (($x25207 (or (not $x19952) (not (or $x24210 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ ?x24203))))))))
-(let ((@x25126 (unit-resolution ((_ quant-inst (b_S_select_o_tm$ ?x3874 ?x23972)) $x25207) @x19955 (hypothesis (or $x24210 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ ?x24203))))) false)))
-(let ((@x25204 (lemma @x25126 (not (or $x24210 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ ?x24203))))))))
-(let (($x25192 (or $x24210 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ ?x24203))))))
-(let ((@x25299 (unit-resolution (def-axiom (or $x24217 $x24199 $x24207 $x24210 (not $x24214))) (unit-resolution (def-axiom (or $x25192 (not $x24210))) @x25204 (not $x24210)) @x25374 (or $x24217 $x24199 $x24207))))
-(let ((@x25300 (unit-resolution @x25299 (unit-resolution (def-axiom (or $x24206 $x24201)) @x25238 $x24206) @x25302 $x24217)))
-(let (($x25367 (or (or $x24217 (not (or $x24198 (not $x24221)))) (or $x24199 $x24207 $x24210 (not $x24214)))))
-(let ((@x25298 (unit-resolution (def-axiom $x25367) @x25300 (unit-resolution @x25215 @x25226 $x24226) false)))
-(let (($x25758 (>= (+ v_b_L_H_p_G_0$ (* (- 1) ?v0!14)) 0)))
-(let (($x25493 (not $x25758)))
-(let (($x26041 (= ?x3929 ?x16374)))
-(let (($x26045 (not $x26041)))
-(let (($x21439 (<= (+ v_b_L_H_max_G_1$ ?x12534) 0)))
-(let (($x21437 (= v_b_L_H_max_G_1$ v_b_L_H_max_G_3$)))
-(let ((@x23828 (mp (hypothesis $x3993) (symm (commutativity (= $x21437 $x3993)) (= $x3993 $x21437)) $x21437)))
-(let ((@x23799 (lemma (unit-resolution (hypothesis (not $x21437)) @x23828 false) (or $x20230 $x21437))))
-(let ((@x25753 (unit-resolution @x23799 (unit-resolution (def-axiom (or $x21123 $x3993)) (hypothesis $x21126) $x3993) $x21437)))
-(let (($x21321 (not $x16622)))
-(let (($x13842 (<= v_b_P_H_len$ 4294967295)))
-(let (($x12342 (>= (+ b_S_max_o_u4$ (* (- 1) v_b_P_H_len$)) 0)))
-(let (($x12813 (= (+ b_S_max_o_u4$ (* (- 1) v_b_P_H_len$)) (+ 4294967295 (* (- 1) v_b_P_H_len$)))))
-(let ((@x12767 (monotonicity (monotonicity @x7025 $x12813) (= $x12342 (>= (+ 4294967295 (* (- 1) v_b_P_H_len$)) 0)))))
-(let ((@x13004 (trans @x12767 (rewrite (= (>= (+ 4294967295 (* (- 1) v_b_P_H_len$)) 0) $x13842)) (= $x12342 $x13842))))
-(let ((@x13005 (mp (mp (and-elim @x10087 $x3720) (rewrite (= $x3720 $x12342)) $x12342) @x13004 $x13842)))
-(let ((@x25757 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1) (or $x13856 (not $x13842) $x12453)) @x13005 (or $x13856 $x12453))))
-(let ((@x26039 (unit-resolution (def-axiom (or $x21090 $x16351 $x16354 $x21084)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x20375 $x12494)) @x25328 $x12494) (unit-resolution @x25757 @x25337 $x13856) (or $x21090 $x21084))))
-(let ((@x25754 (unit-resolution @x26039 (unit-resolution (def-axiom (or $x21123 $x21087)) (hypothesis $x21126) $x21087) $x21084)))
-(let (($x21314 (>= (+ v_b_L_H_p_G_0$ (* (- 1) v_b_L_H_p_G_1$)) (- 1))))
-(let ((@x25773 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x20170 $x21314)) (unit-resolution (def-axiom (or $x21081 $x12500)) @x25754 $x12500) $x21314)))
-(let ((@x24365 (lemma ((_ th-lemma arith farkas -1 1 1) (hypothesis $x12518) (hypothesis $x12456) (hypothesis $x21314) false) (or $x12514 $x12453 (not $x21314)))))
-(let ((@x25776 (unit-resolution (unit-resolution @x24365 @x25337 (or $x12514 (not $x21314))) @x25773 $x12514)))
-(let ((@x25780 (unit-resolution (def-axiom (or $x21078 $x12518 $x21072)) @x25776 (unit-resolution (def-axiom (or $x21081 $x21075)) @x25754 $x21075) $x21072)))
-(let ((@x25788 (symm (unit-resolution (def-axiom (or $x21123 $x3993)) (hypothesis $x21126) $x3993) $x21437)))
-(let ((@x26009 (monotonicity (unit-resolution (def-axiom (or $x21123 $x3994)) (hypothesis $x21126) $x3994) (= ?x3974 (b_S_idx$ ?x3680 v_b_SL_H_witness_G_0$ b_T_T_u1$)))))
-(let ((@x25796 (trans (monotonicity @x26009 (= ?x3975 ?x3793)) (unit-resolution (def-axiom (or $x21205 $x3794)) @x25327 $x3794) (= ?x3975 v_b_L_H_max_G_1$))))
-(let (($x21444 (>= (+ v_b_SL_H_witness_G_0$ (* (- 1) v_b_SL_H_witness_G_1$)) 0)))
-(let (($x21441 (= v_b_SL_H_witness_G_0$ v_b_SL_H_witness_G_1$)))
-(let ((@x25805 (mp (unit-resolution (def-axiom (or $x21123 $x3994)) (hypothesis $x21126) $x3994) (symm (commutativity (= $x21441 $x3994)) (= $x3994 $x21441)) $x21441)))
-(let ((@x25039 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x12553 $x12435 (not $x21444))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x21441) $x21444)) @x25805 $x21444) (unit-resolution (def-axiom (or $x21205 $x12438)) @x25327 $x12438) $x12553)))
-(let ((@x24865 (unit-resolution (def-axiom (or $x20131 $x12550 (not $x3976))) @x25039 (trans @x25796 @x25788 $x3976) $x20131)))
-(let ((@x24882 (unit-resolution (def-axiom (or $x21066 $x20104 $x21060)) (unit-resolution (def-axiom (or $x21057 $x20130)) @x24865 $x21057) (unit-resolution (def-axiom (or $x21069 $x21063)) @x25780 $x21063) $x20104)))
-(let ((@x25939 ((_ th-lemma arith farkas 1 -1 -1 1) (hypothesis $x12471) (hypothesis $x21321) (hypothesis $x21439) (hypothesis (>= (+ ?x3929 ?x16620) 0)) false)))
-(let ((@x25943 (lemma @x25939 (or (not (>= (+ ?x3929 ?x16620) 0)) $x12476 $x16622 (not $x21439)))))
-(let ((@x23480 (unit-resolution @x25943 (unit-resolution (def-axiom (or $x21123 $x12471)) (hypothesis $x21126) $x12471) (unit-resolution (def-axiom (or $x20099 $x21321)) @x24882 $x21321) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x21437) $x21439)) @x25753 $x21439) (not (>= (+ ?x3929 ?x16620) 0)))))
-(let ((@x25040 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x26045 (>= (+ ?x3929 ?x16620) 0))) @x23480 $x26045)))
-(let ((@x26053 (symm (hypothesis (= v_b_L_H_p_G_0$ ?v0!14)) (= ?v0!14 v_b_L_H_p_G_0$))))
-(let ((@x26057 (monotonicity (monotonicity @x26053 (= (b_S_idx$ ?x3680 ?v0!14 b_T_T_u1$) ?x3922)) (= ?x16374 ?x3929))))
-(let ((@x26062 (lemma (unit-resolution (hypothesis $x26045) (symm @x26057 $x26041) false) (or (not (= v_b_L_H_p_G_0$ ?v0!14)) $x26041))))
-(let (($x24388 (<= (+ v_b_L_H_p_G_0$ (* (- 1) ?v0!14)) 0)))
-(let (($x24400 (>= (+ v_b_L_H_max_G_1$ ?x16620) 0)))
-(let (($x25800 (not $x24400)))
-(let ((@x25043 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x25800 $x16622 (not $x21439))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x21437) $x21439)) @x25753 $x21439) (unit-resolution (def-axiom (or $x20099 $x21321)) @x24882 $x21321) $x25800)))
-(let (($x25270 (or $x21046 $x20083 $x20084 $x24388 $x24400)))
-(let (($x24379 (<= (+ ?x16374 (* (- 1) v_b_L_H_max_G_1$)) 0)))
-(let (($x24371 (>= (+ ?v0!14 ?x12400) 0)))
-(let (($x25240 (or $x21046 (or $x20083 $x20084 $x24371 $x24379))))
-(let (($x25224 (= (+ ?x16374 (* (- 1) v_b_L_H_max_G_1$)) (+ (* (- 1) v_b_L_H_max_G_1$) ?x16374))))
-(let ((@x25242 (monotonicity (rewrite $x25224) (= $x24379 (<= (+ (* (- 1) v_b_L_H_max_G_1$) ?x16374) 0)))))
-(let ((@x25266 (trans @x25242 (rewrite (= (<= (+ (* (- 1) v_b_L_H_max_G_1$) ?x16374) 0) $x24400)) (= $x24379 $x24400))))
-(let ((@x25195 (monotonicity (rewrite (= (+ ?v0!14 ?x12400) (+ ?x12400 ?v0!14))) (= $x24371 (>= (+ ?x12400 ?v0!14) 0)))))
-(let ((@x25223 (trans @x25195 (rewrite (= (>= (+ ?x12400 ?v0!14) 0) $x24388)) (= $x24371 $x24388))))
-(let ((@x25269 (monotonicity @x25223 @x25266 (= (or $x20083 $x20084 $x24371 $x24379) (or $x20083 $x20084 $x24388 $x24400)))))
-(let ((@x25287 (trans (monotonicity @x25269 (= $x25240 (or $x21046 (or $x20083 $x20084 $x24388 $x24400)))) (rewrite (= (or $x21046 (or $x20083 $x20084 $x24388 $x24400)) $x25270)) (= $x25240 $x25270))))
-(let ((@x25045 (unit-resolution (mp ((_ quant-inst ?v0!14) $x25240) @x25287 $x25270) @x25333 (unit-resolution (def-axiom (or $x20099 $x16366)) @x24882 $x16366) (unit-resolution (def-axiom (or $x20099 $x16367)) @x24882 $x16367) @x25043 $x24388)))
-(let ((@x25794 (unit-resolution ((_ th-lemma arith triangle-eq) (or (= v_b_L_H_p_G_0$ ?v0!14) (not $x24388) $x25493)) @x25045 (or (= v_b_L_H_p_G_0$ ?v0!14) $x25493))))
-(let ((@x25807 (unit-resolution @x25794 (unit-resolution @x26062 @x25040 (not (= v_b_L_H_p_G_0$ ?v0!14))) $x25493)))
-(let ((@x25542 ((_ th-lemma arith farkas -1 -1 1) (unit-resolution (def-axiom (or $x20099 $x16605)) @x24882 $x16605) @x25773 @x25807 false)))
-(let ((@x23800 (hypothesis $x21114)))
-(let ((@x23806 (unit-resolution (def-axiom (or $x21111 $x3923)) @x23800 $x3923)))
-(let ((@x23831 (unit-resolution (def-axiom (or $x21108 $x16330 $x16333 $x21102)) (unit-resolution (def-axiom (or $x21111 $x21105)) @x23800 $x21105) @x23806 (unit-resolution (def-axiom (or $x21111 $x3924)) @x23800 $x3924) $x21102)))
-(let ((@x23833 (unit-resolution (def-axiom (or $x21156 $x16330 $x16333 $x21150)) (unit-resolution (def-axiom (or $x21111 $x3924)) @x23800 $x3924) (hypothesis $x21153) @x23806 $x21150)))
-(let ((@x23933 (unit-resolution (def-axiom (or $x21132 $x21120 $x21126)) (unit-resolution (def-axiom (or $x21117 $x21111)) @x23800 $x21117) (hypothesis $x21123) $x21132)))
-(let ((@x23949 (unit-resolution (def-axiom (or $x21144 $x16330 $x16339 $x21138)) (unit-resolution (def-axiom (or $x21135 $x21129)) @x23933 $x21135) (unit-resolution (def-axiom (or $x21147 $x21141)) @x23833 $x21141) @x23806 (unit-resolution (def-axiom (or $x21099 $x3926)) @x23831 $x3926) false)))
-(let ((@x25705 (unit-resolution (lemma @x23949 (or $x21111 $x21126 $x21156)) (unit-resolution (def-axiom (or $x21159 $x21153)) @x25336 $x21153) (or $x21111 $x21126))))
-(let ((@x24823 (unit-resolution (def-axiom (or $x21114 $x16330 $x16333 $x21108)) @x25345 (or $x21114 $x16330 $x21108))))
-(let ((@x24804 (unit-resolution @x24823 (unit-resolution (def-axiom (or $x21105 $x21099)) (hypothesis $x21102) $x21105) (unit-resolution (def-axiom (or $x21099 $x3923)) (hypothesis $x21102) $x3923) (hypothesis $x21111) false)))
-(let ((@x25544 (unit-resolution (lemma @x24804 (or $x21099 $x21114)) (unit-resolution @x25705 (lemma @x25542 $x21123) $x21111) $x21099)))
-(let ((@x25545 (unit-resolution (def-axiom (or $x21102 $x16330 $x16339 $x21096)) @x25032 @x25544 (or $x16339 $x21096))))
-(let ((@x25499 (unit-resolution @x25545 (lemma @x25298 $x3926) $x21096)))
-(let ((@x24990 (symm (unit-resolution (def-axiom (or $x21093 $x3940)) @x25499 $x3940) (= v_b_L_H_max_G_2$ v_b_L_H_max_G_3$))))
-(let ((@x25684 (symm (unit-resolution (def-axiom (or $x21093 $x3935)) @x25499 $x3935) (= ?x3929 v_b_L_H_max_G_2$))))
-(let ((@x25702 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x3929 v_b_L_H_max_G_3$)) $x24191)) (trans @x25684 @x24990 (= ?x3929 v_b_L_H_max_G_3$)) $x24191)))
-(let ((@x25703 (unit-resolution @x26039 (unit-resolution (def-axiom (or $x21093 $x21087)) @x25499 $x21087) $x21084)))
-(let ((@x25694 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x20170 $x21314)) (unit-resolution (def-axiom (or $x21081 $x12500)) @x25703 $x12500) $x21314)))
-(let ((@x25722 (unit-resolution (unit-resolution @x24365 @x25337 (or $x12514 (not $x21314))) @x25694 $x12514)))
-(let ((@x25710 (unit-resolution (def-axiom (or $x21078 $x12518 $x21072)) @x25722 (unit-resolution (def-axiom (or $x21081 $x21075)) @x25703 $x21075) $x21072)))
-(let ((@x25723 (monotonicity (unit-resolution (def-axiom (or $x21093 $x3942)) @x25499 $x3942) (= ?x3974 ?x3922))))
-(let ((@x25707 (trans (monotonicity @x25723 (= ?x3975 ?x3929)) @x25684 (= ?x3975 v_b_L_H_max_G_2$))))
-(let (($x24188 (>= (+ v_b_L_H_p_G_0$ (* (- 1) v_b_SL_H_witness_G_1$)) 0)))
-(let ((@x25713 (symm (unit-resolution (def-axiom (or $x21093 $x3942)) @x25499 $x3942) (= v_b_L_H_p_G_0$ v_b_SL_H_witness_G_1$))))
-(let ((@x25747 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= v_b_L_H_p_G_0$ v_b_SL_H_witness_G_1$)) $x24188)) @x25713 $x24188)))
-(let ((@x25736 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x12553 $x12453 (not $x24188))) @x25337 (or $x12553 (not $x24188)))))
-(let ((@x25735 (unit-resolution (def-axiom (or $x20131 $x12550 (not $x3976))) (unit-resolution @x25736 @x25747 $x12553) (trans @x25707 @x24990 $x3976) $x20131)))
-(let ((@x25885 (unit-resolution (def-axiom (or $x21066 $x20104 $x21060)) (unit-resolution (def-axiom (or $x21057 $x20130)) @x25735 $x21057) (unit-resolution (def-axiom (or $x21069 $x21063)) @x25710 $x21063) $x20104)))
-(let (($x25930 (>= (+ ?x3929 ?x16620) 0)))
-(let (($x26036 (= v_b_L_H_p_G_0$ ?v0!14)))
-(let ((@x25738 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x25758 $x16600 (not $x21314))) (unit-resolution (def-axiom (or $x20099 $x16605)) @x25885 $x16605) @x25694 $x25758)))
-(let ((@x25737 (unit-resolution (def-axiom (or $x21156 $x16330 $x16333 $x21150)) (unit-resolution (def-axiom (or $x21159 $x21153)) @x25336 $x21153) @x25345 (or $x16330 $x21150))))
-(let ((@x25813 (unit-resolution (def-axiom (or $x21147 $x21141)) (unit-resolution @x25737 @x25032 $x21150) $x21141)))
-(let ((@x25840 (unit-resolution (def-axiom (or $x21144 $x16330 $x16339 $x21138)) @x25032 @x25813 (or $x16339 $x21138))))
-(let ((@x25839 (unit-resolution (def-axiom (or $x21135 $x21129)) (unit-resolution @x25840 (lemma @x25298 $x3926) $x21138) $x21129)))
-(let ((@x25838 (unit-resolution (def-axiom (or $x21132 $x21120 $x21126)) (lemma @x25542 $x21123) (or $x21132 $x21120))))
-(let ((@x25853 (unit-resolution (def-axiom (or $x21117 $x12476)) (unit-resolution @x25838 @x25839 $x21120) $x12476)))
-(let ((@x25814 (unit-resolution ((_ th-lemma arith assign-bounds 1 1 1) (or $x25800 $x16622 (not $x24191) $x12471)) (unit-resolution (def-axiom (or $x20099 $x21321)) @x25885 $x21321) @x25853 @x25702 $x25800)))
-(let ((@x25830 (unit-resolution (mp ((_ quant-inst ?v0!14) $x25240) @x25287 $x25270) @x25333 (unit-resolution (def-axiom (or $x20099 $x16366)) @x25885 $x16366) (unit-resolution (def-axiom (or $x20099 $x16367)) @x25885 $x16367) @x25814 $x24388)))
-(let ((@x25831 (unit-resolution @x26062 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x26036 (not $x24388) $x25493)) @x25830 @x25738 $x26036) $x26041)))
-((_ th-lemma arith farkas -1 1 1) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x26045 $x25930)) @x25831 $x25930) (unit-resolution (def-axiom (or $x20099 $x21321)) @x25885 $x21321) @x25702 false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
-
+fd9e057047e121293775315a7cd162f9a4c8122a 2972 0
+unsat
+((set-logic <null>)
+(declare-fun ?v0!14 () Int)
+(declare-fun ?v0!15 () Int)
+(declare-fun ?v0!13 () Int)
+(proof
+(let ((?x10078 (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$)))
+(let ((?x10372 (b_S_idx$ ?x10078 v_b_SL_H_witness_G_1$ b_T_T_u1$)))
+(let ((?x10373 (b_S_read_n_u1$ v_b_S_s$ ?x10372)))
+(let (($x10374 (= ?x10373 v_b_L_H_max_G_3$)))
+(let (($x11647 (<= (+ v_b_P_H_len$ (* (- 1) v_b_SL_H_witness_G_1$)) 0)))
+(let (($x19412 (or $x11647 (not $x10374))))
+(let (($x19413 (not $x19412)))
+(let (($x19906 (forall ((?v0 Int) )(!(let ((?x11631 (* (- 1) v_b_L_H_max_G_3$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11633 (<= (+ ?x10163 ?x11631) 0)))
+(let (($x11615 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11615 $x11633))))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
+))
+(let (($x19911 (not $x19906)))
+(let (($x19914 (or $x19911 $x19413)))
+(let (($x19917 (not $x19914)))
+(let ((?x15633 (b_S_idx$ ?x10078 ?v0!14 b_T_T_u1$)))
+(let ((?x15634 (b_S_read_n_u1$ v_b_S_s$ ?x15633)))
+(let ((?x15891 (* (- 1) ?x15634)))
+(let (($x15893 (>= (+ v_b_L_H_max_G_3$ ?x15891) 0)))
+(let (($x15871 (<= (+ v_b_L_H_p_G_1$ (* (- 1) ?v0!14)) 0)))
+(let (($x15627 (<= ?v0!14 4294967295)))
+(let (($x19366 (not $x15627)))
+(let (($x15626 (>= ?v0!14 0)))
+(let (($x19365 (not $x15626)))
+(let (($x19381 (or $x19365 $x19366 $x15871 $x15893)))
+(let (($x19386 (not $x19381)))
+(let (($x19920 (or $x19386 $x19917)))
+(let (($x19923 (not $x19920)))
+(let ((?x11581 (* (- 1) v_b_L_H_p_G_1$)))
+(let ((?x11609 (+ v_b_P_H_len$ ?x11581)))
+(let (($x11608 (>= ?x11609 0)))
+(let (($x11612 (not $x11608)))
+(let (($x19926 (or $x11612 $x19923)))
+(let (($x19929 (not $x19926)))
+(let (($x19932 (or $x11612 $x19929)))
+(let (($x19935 (not $x19932)))
+(let (($x11536 (>= v_b_SL_H_witness_G_1$ 0)))
+(let (($x19455 (not $x11536)))
+(let (($x11578 (>= v_b_L_H_p_G_1$ 2)))
+(let (($x19454 (not $x11578)))
+(let (($x10358 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_24$ b_H_loc_o_p$ v_b_L_H_p_G_1$ b_T_T_u4$)))
+(let (($x19453 (not $x10358)))
+(let ((?x11582 (+ v_b_L_H_p_G_0$ ?x11581)))
+(let (($x11580 (= ?x11582 (- 1))))
+(let (($x19452 (not $x11580)))
+(let (($x13353 (<= v_b_L_H_p_G_0$ 4294967294)))
+(let (($x15614 (not $x13353)))
+(let (($x11570 (>= v_b_L_H_p_G_0$ (- 1))))
+(let (($x15611 (not $x11570)))
+(let (($x19938 (or $x15611 $x15614 $x19452 $x19453 $x19454 $x19455 $x19935)))
+(let (($x19941 (not $x19938)))
+(let (($x19944 (or $x15611 $x15614 $x19941)))
+(let (($x19947 (not $x19944)))
+(let (($x11429 (>= v_b_L_H_p_G_0$ 1)))
+(let (($x19474 (not $x11429)))
+(let (($x10392 (= v_b_SL_H_witness_G_1$ v_b_SL_H_witness_G_0$)))
+(let (($x19513 (not $x10392)))
+(let (($x10391 (= v_b_L_H_max_G_3$ v_b_L_H_max_G_1$)))
+(let (($x19512 (not $x10391)))
+(let (($x11432 (>= v_b_SL_H_witness_G_0$ 0)))
+(let (($x19501 (not $x11432)))
+(let ((?x10320 (b_S_idx$ ?x10078 v_b_L_H_p_G_0$ b_T_T_u1$)))
+(let ((?x10327 (b_S_read_n_u1$ v_b_S_s$ ?x10320)))
+(let ((?x11517 (* (- 1) ?x10327)))
+(let ((?x11518 (+ v_b_L_H_max_G_1$ ?x11517)))
+(let (($x11516 (>= ?x11518 0)))
+(let (($x11515 (not $x11516)))
+(let (($x19980 (or $x11515 $x19501 $x19512 $x19513 $x19474 $x19455 $x19947)))
+(let (($x19983 (not $x19980)))
+(let ((?x25039 (+ ?x10327 ?x15891)))
+(let (($x25041 (>= ?x25039 0)))
+(let (($x25038 (= ?x10327 ?x15634)))
+(let (($x25035 (= v_b_L_H_p_G_0$ ?v0!14)))
+(let (($x10340 (= v_b_SL_H_witness_G_1$ v_b_L_H_p_G_0$)))
+(let (($x19473 (not $x10340)))
+(let (($x10338 (= v_b_L_H_max_G_3$ v_b_L_H_max_G_2$)))
+(let (($x19472 (not $x10338)))
+(let (($x10335 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_24_o_47$ b_H_loc_o_witness$ v_b_L_H_p_G_0$ b_T_T_u4$)))
+(let (($x19471 (not $x10335)))
+(let (($x10334 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_23_o_7$ b_H_loc_o_max$ v_b_L_H_max_G_2$ b_T_T_u1$)))
+(let (($x19470 (not $x10334)))
+(let (($x10333 (= v_b_L_H_max_G_2$ ?x10327)))
+(let (($x19469 (not $x10333)))
+(let (($x10324 (b_S_thread_n_local$ v_b_S_s$ ?x10320)))
+(let (($x15599 (not $x10324)))
+(let (($x10321 (b_S_is$ ?x10320 b_T_T_u1$)))
+(let (($x15590 (not $x10321)))
+(let (($x19950 (or $x15590 $x15599 $x19469 $x19470 $x19471 $x19472 $x19473 $x19474 $x19455 $x19947)))
+(let (($x19953 (not $x19950)))
+(let (($x19956 (or $x15590 $x15599 $x19953)))
+(let (($x19959 (not $x19956)))
+(let (($x10322 (b_S_typed$ v_b_S_s$ ?x10320)))
+(let (($x15593 (not $x10322)))
+(let (($x19962 (or $x15590 $x15593 $x19959)))
+(let (($x19965 (not $x19962)))
+(let (($x19968 (or $x15590 $x15593 $x19965)))
+(let (($x19971 (not $x19968)))
+(let (($x19974 (or $x11516 $x19474 $x19501 $x19971)))
+(let (($x19977 (not $x19974)))
+(let (($x19986 (or $x19977 $x19983)))
+(let (($x19989 (not $x19986)))
+(let (($x19992 (or $x15590 $x15599 $x19474 $x19501 $x19989)))
+(let (($x19995 (not $x19992)))
+(let ((?x23404 (b_S_ref$ ?x10320)))
+(let ((?x23225 (b_S_ptr$ b_T_T_u1$ ?x23404)))
+(let ((?x24099 (b_S_typ$ ?x23225)))
+(let ((?x24100 (b_S_kind_n_of$ ?x24099)))
+(let (($x23805 (= ?x24100 b_S_kind_n_primitive$)))
+(let ((?x21472 (b_S_kind_n_of$ b_T_T_u1$)))
+(let (($x21473 (= ?x21472 b_S_kind_n_primitive$)))
+(let (($x9768 (b_S_is_n_primitive$ b_T_T_u1$)))
+(let (($x21480 (= $x9768 $x21473)))
+(let (($x9891 (forall ((?v0 B_S_ctype$) )(!(let ((?x9849 (b_S_kind_n_of$ ?v0)))
+(let (($x9883 (= ?x9849 b_S_kind_n_primitive$)))
+(let (($x2704 (b_S_is_n_primitive$ ?v0)))
+(= $x2704 $x9883)))) :pattern ( (b_S_is_n_primitive$ ?v0) )))
+))
+(let ((?x9849 (b_S_kind_n_of$ ?0)))
+(let (($x9883 (= ?x9849 b_S_kind_n_primitive$)))
+(let (($x2704 (b_S_is_n_primitive$ ?0)))
+(let (($x9888 (= $x2704 $x9883)))
+(let (($x9886 (forall ((?v0 B_S_ctype$) )(!(let ((?x9849 (b_S_kind_n_of$ ?v0)))
+(let (($x9883 (= ?x9849 b_S_kind_n_primitive$)))
+(let (($x2704 (b_S_is_n_primitive$ ?v0)))
+(= $x2704 $x9883)))) :pattern ( (b_S_is_n_primitive$ ?v0) )))
+))
+(let ((@x9896 (mp (asserted $x9886) (quant-intro (rewrite (= (= $x2704 $x9883) $x9888)) (= $x9886 $x9891)) $x9891)))
+(let ((@x15456 (mp~ @x9896 (nnf-pos (refl (~ $x9888 $x9888)) (~ $x9891 $x9891)) $x9891)))
+(let (($x21224 (not $x9891)))
+(let (($x21483 (or $x21224 $x21480)))
+(let ((@x21484 ((_ quant-inst b_T_T_u1$) $x21483)))
+(let ((@x9769 (asserted $x9768)))
+(let ((@x23544 (unit-resolution (def-axiom (or (not $x21480) (not $x9768) $x21473)) @x9769 (or (not $x21480) $x21473))))
+(let ((?x23241 (b_S_typ$ ?x10320)))
+(let (($x23242 (= ?x23241 b_T_T_u1$)))
+(let (($x23270 (= $x10321 $x23242)))
+(let (($x19828 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(!(let ((?x6636 (b_S_typ$ ?v0)))
+(let (($x7865 (= ?x6636 ?v1)))
+(let (($x9596 (b_S_is$ ?v0 ?v1)))
+(= $x9596 $x7865)))) :pattern ( (b_S_is$ ?v0 ?v1) )))
+))
+(let (($x9617 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(let ((?x6636 (b_S_typ$ ?v0)))
+(let (($x7865 (= ?x6636 ?v1)))
+(let (($x9596 (b_S_is$ ?v0 ?v1)))
+(= $x9596 $x7865)))))
+))
+(let ((?x6636 (b_S_typ$ ?1)))
+(let (($x7865 (= ?x6636 ?0)))
+(let (($x9596 (b_S_is$ ?1 ?0)))
+(let (($x9614 (= $x9596 $x7865)))
+(let (($x9611 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(let ((?x6636 (b_S_typ$ ?v0)))
+(let (($x7865 (= ?x6636 ?v1)))
+(let (($x9596 (b_S_is$ ?v0 ?v1)))
+(= $x9596 $x7865)))))
+))
+(let ((@x9622 (mp (asserted $x9611) (quant-intro (rewrite (= (= $x9596 $x7865) $x9614)) (= $x9611 $x9617)) $x9617)))
+(let ((@x19833 (mp (mp~ @x9622 (nnf-pos (refl (~ $x9614 $x9614)) (~ $x9617 $x9617)) $x9617) (quant-intro (refl (= $x9614 $x9614)) (= $x9617 $x19828)) $x19828)))
+(let (($x22002 (not $x19828)))
+(let (($x23990 (or $x22002 $x23270)))
+(let ((@x23870 ((_ quant-inst (b_S_idx$ ?x10078 v_b_L_H_p_G_0$ b_T_T_u1$) b_T_T_u1$) $x23990)))
+(let ((?x10045 (b_S_sizeof$ b_T_T_u1$)))
+(let ((?x23278 (* ?x10045 v_b_L_H_p_G_0$)))
+(let ((?x10079 (b_S_ref$ ?x10078)))
+(let ((?x24174 (+ ?x10079 ?x23278)))
+(let ((?x24198 (b_S_ptr$ b_T_T_u1$ ?x24174)))
+(let ((?x23028 (b_S_typ$ ?x24198)))
+(let (($x23029 (= ?x23028 b_T_T_u1$)))
+(let (($x19841 (forall ((?v0 B_S_ctype$) (?v1 Int) )(!(= (b_S_typ$ (b_S_ptr$ ?v0 ?v1)) ?v0) :pattern ( (b_S_ptr$ ?v0 ?v1) )))
+))
+(let (($x9659 (forall ((?v0 B_S_ctype$) (?v1 Int) )(= (b_S_typ$ (b_S_ptr$ ?v0 ?v1)) ?v0))
+))
+(let (($x9658 (= (b_S_typ$ (b_S_ptr$ ?1 ?0)) ?1)))
+(let ((@x15361 (mp~ (asserted $x9659) (nnf-pos (refl (~ $x9658 $x9658)) (~ $x9659 $x9659)) $x9659)))
+(let ((@x19846 (mp @x15361 (quant-intro (refl (= $x9658 $x9658)) (= $x9659 $x19841)) $x19841)))
+(let (($x24201 (= ?x10320 ?x24198)))
+(let (($x24214 (not $x24201)))
+(let (($x24067 (b_S_extent_n_hint$ ?x10320 ?x10078)))
+(let (($x24065 (not $x24067)))
+(let (($x24160 (or $x24065 $x24214)))
+(let (($x24161 (not $x24160)))
+(let (($x18180 (forall ((?v0 B_S_ptr$) (?v1 Int) (?v2 B_S_ctype$) )(!(let ((?x7205 (b_S_idx$ ?v0 ?v1 ?v2)))
+(let (($x7213 (= ?x7205 (b_S_ptr$ ?v2 (+ (b_S_ref$ ?v0) (* ?v1 (b_S_sizeof$ ?v2)))))))
+(not (or (not (b_S_extent_n_hint$ ?x7205 ?v0)) (not $x7213))))) :pattern ( (b_S_idx$ ?v0 ?v1 ?v2) )))
+))
+(let (($x7216 (forall ((?v0 B_S_ptr$) (?v1 Int) (?v2 B_S_ctype$) )(!(let ((?x7205 (b_S_idx$ ?v0 ?v1 ?v2)))
+(let (($x7213 (= ?x7205 (b_S_ptr$ ?v2 (+ (b_S_ref$ ?v0) (* ?v1 (b_S_sizeof$ ?v2)))))))
+(and (b_S_extent_n_hint$ ?x7205 ?v0) $x7213))) :pattern ( (b_S_idx$ ?v0 ?v1 ?v2) )))
+))
+(let ((?x7205 (b_S_idx$ ?2 ?1 ?0)))
+(let (($x7213 (= ?x7205 (b_S_ptr$ ?0 (+ (b_S_ref$ ?2) (* ?1 (b_S_sizeof$ ?0)))))))
+(let (($x7214 (and (b_S_extent_n_hint$ ?x7205 ?2) $x7213)))
+(let ((@x18179 (rewrite (= $x7214 (not (or (not (b_S_extent_n_hint$ ?x7205 ?2)) (not $x7213)))))))
+(let ((@x14561 (mp~ (asserted $x7216) (nnf-pos (refl (~ $x7214 $x7214)) (~ $x7216 $x7216)) $x7216)))
+(let ((@x18183 (mp @x14561 (quant-intro @x18179 (= $x7216 $x18180)) $x18180)))
+(let (($x22568 (not $x18180)))
+(let (($x24300 (or $x22568 $x24161)))
+(let (($x24080 (not (= ?x10320 (b_S_ptr$ b_T_T_u1$ (+ ?x10079 (* v_b_L_H_p_G_0$ ?x10045)))))))
+(let (($x24081 (not (or $x24065 $x24080))))
+(let (($x24202 (= (= ?x10320 (b_S_ptr$ b_T_T_u1$ (+ ?x10079 (* v_b_L_H_p_G_0$ ?x10045)))) $x24201)))
+(let ((@x24197 (monotonicity (rewrite (= (* v_b_L_H_p_G_0$ ?x10045) ?x23278)) (= (+ ?x10079 (* v_b_L_H_p_G_0$ ?x10045)) ?x24174))))
+(let ((@x24200 (monotonicity @x24197 (= (b_S_ptr$ b_T_T_u1$ (+ ?x10079 (* v_b_L_H_p_G_0$ ?x10045))) ?x24198))))
+(let ((@x24150 (monotonicity (monotonicity (monotonicity @x24200 $x24202) (= $x24080 $x24214)) (= (or $x24065 $x24080) $x24160))))
+(let ((@x24316 (monotonicity (monotonicity @x24150 (= $x24081 $x24161)) (= (or $x22568 $x24081) $x24300))))
+(let ((@x24299 (mp ((_ quant-inst (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) v_b_L_H_p_G_0$ b_T_T_u1$) (or $x22568 $x24081)) (trans @x24316 (rewrite (= $x24300 $x24300)) (= (or $x22568 $x24081) $x24300)) $x24300)))
+(let ((@x24341 (unit-resolution (def-axiom (or $x24160 $x24201)) (unit-resolution @x24299 @x18183 $x24161) $x24201)))
+(let ((@x24343 (trans (monotonicity @x24341 (= ?x23241 ?x23028)) (unit-resolution ((_ quant-inst b_T_T_u1$ (+ ?x10079 ?x23278)) (or (not $x19841) $x23029)) @x19846 $x23029) $x23242)))
+(let (($x23889 (not $x23242)))
+(let ((@x24337 (unit-resolution (def-axiom (or (not $x23270) $x10321 $x23889)) (hypothesis $x15590) (or (not $x23270) $x23889))))
+(let ((@x24344 (unit-resolution (unit-resolution @x24337 (unit-resolution @x23870 @x19833 $x23270) $x23889) @x24343 false)))
+(let ((@x24345 (lemma @x24344 $x10321)))
+(let ((@x25031 (unit-resolution (def-axiom (or (not $x23270) $x15590 $x23242)) @x24345 (or (not $x23270) $x23242))))
+(let (($x23227 (= ?x10320 ?x23225)))
+(let (($x9607 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(!(or (not (b_S_is$ ?v0 ?v1)) (= ?v0 (b_S_ptr$ ?v1 (b_S_ref$ ?v0)))) :pattern ( (b_S_is$ ?v0 ?v1) )))
+))
+(let (($x9604 (or (not $x9596) (= ?1 (b_S_ptr$ ?0 (b_S_ref$ ?1))))))
+(let (($x9601 (forall ((?v0 B_S_ptr$) (?v1 B_S_ctype$) )(!(let (($x9596 (b_S_is$ ?v0 ?v1)))
+(=> $x9596 (= ?v0 (b_S_ptr$ ?v1 (b_S_ref$ ?v0))))) :pattern ( (b_S_is$ ?v0 ?v1) )))
+))
+(let ((@x9606 (rewrite (= (=> $x9596 (= ?1 (b_S_ptr$ ?0 (b_S_ref$ ?1)))) $x9604))))
+(let ((@x15336 (mp~ (mp (asserted $x9601) (quant-intro @x9606 (= $x9601 $x9607)) $x9607) (nnf-pos (refl (~ $x9604 $x9604)) (~ $x9607 $x9607)) $x9607)))
+(let (($x21994 (not $x9607)))
+(let (($x24289 (or $x21994 $x15590 $x23227)))
+(let ((@x24294 (mp ((_ quant-inst (b_S_idx$ ?x10078 v_b_L_H_p_G_0$ b_T_T_u1$) b_T_T_u1$) (or $x21994 (or $x15590 $x23227))) (rewrite (= (or $x21994 (or $x15590 $x23227)) $x24289)) $x24289)))
+(let ((@x25262 (symm (unit-resolution @x24294 @x15336 @x24345 $x23227) (= ?x23225 ?x10320))))
+(let ((@x24694 (trans (monotonicity @x25262 (= ?x24099 ?x23241)) (unit-resolution @x25031 (unit-resolution @x23870 @x19833 $x23270) $x23242) (= ?x24099 b_T_T_u1$))))
+(let ((@x24696 (trans (monotonicity @x24694 (= ?x24100 ?x21472)) (unit-resolution @x23544 (unit-resolution @x21484 @x15456 $x21480) $x21473) $x23805)))
+(let ((?x10272 (b_S_typemap$ v_b_S_s$)))
+(let ((?x24217 (b_S_select_o_tm$ ?x10272 ?x23225)))
+(let ((?x24218 (b_S_ts_n_emb$ ?x24217)))
+(let (($x23797 (b_S_closed$ v_b_S_s$ ?x24218)))
+(let (($x23803 (not $x23797)))
+(let (($x23775 (b_S_ts_n_is_n_volatile$ ?x24217)))
+(let (($x23784 (not $x23775)))
+(let (($x23804 (or $x23784 $x23803)))
+(let ((@x24686 (monotonicity (monotonicity @x25262 (= ?x24217 (b_S_select_o_tm$ ?x10272 ?x10320))) (= $x23775 (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x10272 ?x10320))))))
+(let ((@x24702 (symm @x24686 (= (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x10272 ?x10320)) $x23775))))
+(let ((@x24701 (monotonicity @x24702 (= (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x10272 ?x10320))) $x23784))))
+(let ((?x23101 (b_S_select_o_tm$ ?x10272 ?x10320)))
+(let (($x23361 (b_S_ts_n_is_n_volatile$ ?x23101)))
+(let (($x23297 (not $x23361)))
+(let (($x23362 (or $x15593 $x23361)))
+(let (($x23363 (not $x23362)))
+(let (($x11901 (>= v_b_L_H_p_G_0$ 0)))
+(let (($x20030 (forall ((?v0 Int) )(!(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10238 (= ?x10163 v_b_S_result_G_0$)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11800 (not $x10238))))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
+))
+(let (($x20035 (not $x20030)))
+(let (($x20022 (forall ((?v0 Int) )(!(let ((?x11816 (* (- 1) v_b_S_result_G_0$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11818 (<= (+ ?x10163 ?x11816) 0)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11800 $x11818))))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
+))
+(let (($x20027 (not $x20022)))
+(let (($x20038 (or $x20027 $x20035)))
+(let (($x20041 (not $x20038)))
+(let ((?x15743 (b_S_idx$ ?x10078 ?v0!15 b_T_T_u1$)))
+(let ((?x15744 (b_S_read_n_u1$ v_b_S_s$ ?x15743)))
+(let ((?x16029 (* (- 1) ?x15744)))
+(let (($x16031 (>= (+ v_b_S_result_G_0$ ?x16029) 0)))
+(let (($x16009 (<= (+ v_b_P_H_len$ (* (- 1) ?v0!15)) 0)))
+(let (($x15737 (<= ?v0!15 4294967295)))
+(let (($x19560 (not $x15737)))
+(let (($x15736 (>= ?v0!15 0)))
+(let (($x19559 (not $x15736)))
+(let (($x19575 (or $x19559 $x19560 $x16009 $x16031)))
+(let (($x19580 (not $x19575)))
+(let (($x20044 (or $x19580 $x20041)))
+(let (($x20047 (not $x20044)))
+(let (($x10222 (= v_b_S_result_G_0$ v_b_L_H_max_G_1$)))
+(let (($x19640 (not $x10222)))
+(let (($x10220 (= v_b_SL_H_witness_G_2$ v_b_SL_H_witness_G_0$)))
+(let (($x19639 (not $x10220)))
+(let (($x10218 (= v_b_L_H_p_G_2$ v_b_L_H_p_G_0$)))
+(let (($x19638 (not $x10218)))
+(let (($x10216 (= v_b_L_H_max_G_4$ v_b_L_H_max_G_1$)))
+(let (($x19637 (not $x10216)))
+(let (($x15729 (not b_S_position_n_marker$)))
+(let (($x20050 (or $x15729 $x19474 $x19501 $x19637 $x19638 $x19639 $x19640 $x20047)))
+(let (($x20053 (not $x20050)))
+(let (($x20056 (or $x15729 $x20053)))
+(let (($x20059 (not $x20056)))
+(let ((?x11484 (* (- 1) v_b_L_H_p_G_0$)))
+(let ((?x11485 (+ v_b_P_H_len$ ?x11484)))
+(let (($x11486 (<= ?x11485 0)))
+(let (($x11487 (not $x11486)))
+(let (($x20062 (or $x11487 $x19474 $x19501 $x20059)))
+(let (($x20065 (not $x20062)))
+(let (($x19998 (or $x15590 $x15599 $x19995)))
+(let (($x20001 (not $x19998)))
+(let (($x20004 (or $x15590 $x15593 $x20001)))
+(let (($x20007 (not $x20004)))
+(let (($x20010 (or $x15590 $x15593 $x20007)))
+(let (($x20013 (not $x20010)))
+(let (($x20016 (or $x11486 $x19474 $x19501 $x20013)))
+(let (($x20019 (not $x20016)))
+(let (($x20068 (or $x20019 $x20065)))
+(let (($x20071 (not $x20068)))
+(let ((?x2238 (b_S_ptr_n_to$ b_T_T_u1$)))
+(let (($x10296 (b_S_local_n_value_n_is_n_ptr$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_arr$ ?x10078 ?x2238)))
+(let (($x19683 (not $x10296)))
+(let ((?x10105 (b_S_ptr_n_to_n_int$ ?x10078)))
+(let (($x10295 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_arr$ ?x10105 ?x2238)))
+(let (($x19682 (not $x10295)))
+(let (($x10294 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_len$ v_b_P_H_len$ b_T_T_u4$)))
+(let (($x19681 (not $x10294)))
+(let (($x10293 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_max$ v_b_L_H_max_G_1$ b_T_T_u1$)))
+(let (($x19680 (not $x10293)))
+(let (($x10292 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_witness$ v_b_SL_H_witness_G_0$ b_T_T_u4$)))
+(let (($x19679 (not $x10292)))
+(let (($x10291 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_3$ b_H_loc_o_p$ v_b_L_H_p_G_0$ b_T_T_u4$)))
+(let (($x19678 (not $x10291)))
+(let (($x10097 (b_S_full_n_stop$ v_b_S_s$)))
+(let (($x19677 (not $x10097)))
+(let (($x10204 (b_S_good_n_state_n_ext$ b_H_tok_S_1_T_16_o_3$ v_b_S_s$)))
+(let (($x19676 (not $x10204)))
+(let (($x10284 (b_S_call_n_transition$ v_b_S_s$ v_b_S_s$)))
+(let (($x19675 (not $x10284)))
+(let ((?x10190 (b_S_idx$ ?x10078 v_b_SL_H_witness_G_0$ b_T_T_u1$)))
+(let ((?x10191 (b_S_read_n_u1$ v_b_S_s$ ?x10190)))
+(let (($x10192 (= ?x10191 v_b_L_H_max_G_1$)))
+(let (($x19674 (not $x10192)))
+(let ((?x11865 (* (- 1) v_b_SL_H_witness_G_0$)))
+(let ((?x11866 (+ v_b_P_H_len$ ?x11865)))
+(let (($x11867 (<= ?x11866 0)))
+(let (($x19898 (forall ((?v0 Int) )(!(let ((?x11887 (* (- 1) v_b_L_H_max_G_1$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11889 (<= (+ ?x10163 ?x11887) 0)))
+(let (($x11871 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11871 $x11889))))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
+))
+(let (($x19903 (not $x19898)))
+(let (($x11898 (>= ?x11485 0)))
+(let (($x19672 (not $x11898)))
+(let (($x13326 (<= v_b_L_H_p_G_0$ 4294967295)))
+(let (($x19671 (not $x13326)))
+(let (($x19670 (not $x11901)))
+(let (($x13315 (<= v_b_SL_H_witness_G_0$ 4294967295)))
+(let (($x19669 (not $x13315)))
+(let (($x13304 (<= v_b_L_H_max_G_1$ 255)))
+(let (($x19668 (not $x13304)))
+(let (($x11911 (>= v_b_L_H_max_G_1$ 0)))
+(let (($x19667 (not $x11911)))
+(let ((?x10137 (b_S_idx$ ?x10078 0 b_T_T_u1$)))
+(let ((?x10144 (b_S_read_n_u1$ v_b_S_s$ ?x10137)))
+(let (($x10167 (= ?x10144 v_b_L_H_max_G_0$)))
+(let (($x15548 (not $x10167)))
+(let (($x11259 (<= v_b_P_H_len$ 0)))
+(let (($x20074 (or $x11259 $x15548 $x19667 $x19668 $x19669 $x19670 $x19671 $x19672 $x19903 $x11867 $x19674 $x19675 $x19676 $x19677 $x19678 $x19679 $x19680 $x19681 $x19682 $x19683 $x19474 $x19501 $x20071)))
+(let (($x20077 (not $x20074)))
+(let (($x20080 (or $x11259 $x15548 $x20077)))
+(let (($x20083 (not $x20080)))
+(let (($x19890 (forall ((?v0 Int) )(!(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11404 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x10163)) 0)))
+(let (($x11388 (>= ?v0 1)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11388 $x11404)))))))) :pattern ( (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$) )))
+))
+(let (($x19895 (not $x19890)))
+(let (($x20086 (or $x19895 $x20083)))
+(let (($x20089 (not $x20086)))
+(let ((?x15529 (b_S_idx$ ?x10078 ?v0!13 b_T_T_u1$)))
+(let ((?x15530 (b_S_read_n_u1$ v_b_S_s$ ?x15529)))
+(let (($x15533 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x15530)) 0)))
+(let (($x15525 (>= ?v0!13 1)))
+(let (($x15524 (<= ?v0!13 4294967295)))
+(let (($x19298 (not $x15524)))
+(let (($x15523 (>= ?v0!13 0)))
+(let (($x19297 (not $x15523)))
+(let (($x19313 (or $x19297 $x19298 $x15525 $x15533)))
+(let (($x20589 (not $x15533)))
+(let (($x19318 (not $x19313)))
+(let ((@x24016 (hypothesis $x19318)))
+(let (($x10141 (b_S_thread_n_local$ v_b_S_s$ ?x10137)))
+(let ((?x21175 (b_S_typ$ ?x10078)))
+(let ((?x22803 (b_S_kind_n_of$ ?x21175)))
+(let (($x22807 (= ?x22803 b_S_kind_n_primitive$)))
+(let (($x21176 (= ?x21175 b_T_T_u1$)))
+(let (($x21147 (not $x19841)))
+(let (($x21181 (or $x21147 $x21176)))
+(let ((@x21182 ((_ quant-inst b_T_T_u1$ v_b_P_H_arr$) $x21181)))
+(let ((@x23076 (trans (monotonicity (unit-resolution @x21182 @x19846 $x21176) (= ?x22803 ?x21472)) (unit-resolution @x23544 (unit-resolution @x21484 @x15456 $x21480) $x21473) $x22807)))
+(let ((?x22818 (b_S_select_o_tm$ ?x10272 ?x10078)))
+(let ((?x22903 (b_S_ts_n_emb$ ?x22818)))
+(let (($x22904 (b_S_closed$ v_b_S_s$ ?x22903)))
+(let (($x22902 (b_S_ts_n_is_n_volatile$ ?x22818)))
+(let (($x22897 (not $x22902)))
+(let (($x22906 (or $x22897 (not $x22904))))
+(let ((?x22478 (b_S_select_o_tm$ ?x10272 ?x10137)))
+(let ((?x22485 (b_S_ref$ ?x10137)))
+(let ((?x22505 (b_S_ptr$ b_T_T_u1$ ?x22485)))
+(let ((?x22655 (b_S_select_o_tm$ ?x10272 ?x22505)))
+(let (($x22506 (= ?x10137 ?x22505)))
+(let ((?x22553 (b_S_ptr$ b_T_T_u1$ ?x10079)))
+(let (($x22556 (= ?x10137 ?x22553)))
+(let (($x22559 (not $x22556)))
+(let (($x22523 (b_S_extent_n_hint$ ?x10137 ?x10078)))
+(let (($x22524 (not $x22523)))
+(let (($x22562 (or $x22524 $x22559)))
+(let (($x22565 (not $x22562)))
+(let (($x22569 (or $x22568 $x22565)))
+(let (($x22542 (or $x22524 (not (= ?x10137 (b_S_ptr$ b_T_T_u1$ (+ ?x10079 (* 0 ?x10045))))))))
+(let (($x22543 (not $x22542)))
+(let (($x22560 (= (not (= ?x10137 (b_S_ptr$ b_T_T_u1$ (+ ?x10079 (* 0 ?x10045))))) $x22559)))
+(let ((@x22548 (monotonicity (rewrite (= (* 0 ?x10045) 0)) (= (+ ?x10079 (* 0 ?x10045)) (+ ?x10079 0)))))
+(let ((@x22552 (trans @x22548 (rewrite (= (+ ?x10079 0) ?x10079)) (= (+ ?x10079 (* 0 ?x10045)) ?x10079))))
+(let ((@x22555 (monotonicity @x22552 (= (b_S_ptr$ b_T_T_u1$ (+ ?x10079 (* 0 ?x10045))) ?x22553))))
+(let ((@x22558 (monotonicity @x22555 (= (= ?x10137 (b_S_ptr$ b_T_T_u1$ (+ ?x10079 (* 0 ?x10045)))) $x22556))))
+(let ((@x22567 (monotonicity (monotonicity (monotonicity @x22558 $x22560) (= $x22542 $x22562)) (= $x22543 $x22565))))
+(let ((@x22576 (trans (monotonicity @x22567 (= (or $x22568 $x22543) $x22569)) (rewrite (= $x22569 $x22569)) (= (or $x22568 $x22543) $x22569))))
+(let ((@x22577 (mp ((_ quant-inst (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) 0 b_T_T_u1$) (or $x22568 $x22543)) @x22576 $x22569)))
+(let ((@x22581 (def-axiom (or $x22562 $x22556))))
+(let ((@x24124 (unit-resolution @x22581 (lemma (unit-resolution @x22577 @x18183 (hypothesis $x22562) false) $x22565) $x22556)))
+(let (($x21179 (= ?x10079 v_b_P_H_arr$)))
+(let (($x19835 (forall ((?v0 B_S_ctype$) (?v1 Int) )(!(= (b_S_ref$ (b_S_ptr$ ?v0 ?v1)) ?v1) :pattern ( (b_S_ptr$ ?v0 ?v1) )))
+))
+(let (($x9655 (forall ((?v0 B_S_ctype$) (?v1 Int) )(= (b_S_ref$ (b_S_ptr$ ?v0 ?v1)) ?v1))
+))
+(let (($x9654 (= (b_S_ref$ (b_S_ptr$ ?1 ?0)) ?0)))
+(let ((@x15356 (mp~ (asserted $x9655) (nnf-pos (refl (~ $x9654 $x9654)) (~ $x9655 $x9655)) $x9655)))
+(let ((@x19840 (mp @x15356 (quant-intro (refl (= $x9654 $x9654)) (= $x9655 $x19835)) $x19835)))
+(let (($x21152 (not $x19835)))
+(let (($x21184 (or $x21152 $x21179)))
+(let ((@x21185 ((_ quant-inst b_T_T_u1$ v_b_P_H_arr$) $x21184)))
+(let ((@x24511 (unit-resolution @x21185 @x19840 $x21179)))
+(let ((@x22852 (monotonicity @x24511 (= ?x22553 ?x10078))))
+(let ((@x24070 (monotonicity (trans (hypothesis $x22556) @x22852 (= ?x10137 ?x10078)) (= ?x22485 ?x10079))))
+(let ((@x22338 (symm (monotonicity (trans @x24070 @x24511 (= ?x22485 v_b_P_H_arr$)) (= ?x22505 ?x10078)) (= ?x10078 ?x22505))))
+(let ((@x22340 (unit-resolution (hypothesis (not $x22506)) (trans (trans (hypothesis $x22556) @x22852 (= ?x10137 ?x10078)) @x22338 $x22506) false)))
+(let ((@x23350 (unit-resolution (lemma @x22340 (or $x22559 $x22506)) @x24124 $x22506)))
+(let ((@x23663 (trans (symm @x22852 (= ?x10078 ?x22553)) (symm @x24124 (= ?x22553 ?x10137)) (= ?x10078 ?x10137))))
+(let ((@x22940 (trans (monotonicity (trans @x23663 @x23350 (= ?x10078 ?x22505)) (= ?x22818 ?x22655)) (symm (monotonicity @x23350 (= ?x22478 ?x22655)) (= ?x22655 ?x22478)) (= ?x22818 ?x22478))))
+(let ((@x23082 (symm (monotonicity @x22940 (= $x22902 (b_S_ts_n_is_n_volatile$ ?x22478))) (= (b_S_ts_n_is_n_volatile$ ?x22478) $x22902))))
+(let (($x22602 (b_S_ts_n_is_n_volatile$ ?x22478)))
+(let (($x22641 (not $x22602)))
+(let (($x10139 (b_S_typed$ v_b_S_s$ ?x10137)))
+(let (($x15505 (not $x10139)))
+(let (($x22603 (or $x15505 $x22602)))
+(let (($x22604 (not $x22603)))
+(let ((?x10076 (b_S_array$ b_T_T_u1$ v_b_P_H_len$)))
+(let ((?x10080 (b_S_ptr$ ?x10076 ?x10079)))
+(let ((?x21014 (b_S_ref$ ?x10080)))
+(let ((?x21983 (b_S_ptr$ ?x10076 ?x21014)))
+(let ((?x22343 (b_S_domain$ v_b_S_s$ ?x21983)))
+(let ((?x22595 (b_S_ptr$ ?x10076 v_b_P_H_arr$)))
+(let (($x22596 (b_S_set_n_in$ ?x22595 ?x22343)))
+(let ((@x24530 (monotonicity (symm @x24511 (= v_b_P_H_arr$ ?x10079)) (= ?x22595 ?x10080))))
+(let (($x21990 (= ?x10080 ?x21983)))
+(let (($x10084 (b_S_is$ ?x10080 ?x10076)))
+(let (($x11245 (>= (+ b_S_max_o_u4$ (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x11243 (>= v_b_P_H_len$ 0)))
+(let (($x10439 (forall ((?v0 B_S_ptr$) )(!(let (($x10113 (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?v0)))
+(not $x10113)) :pattern ( (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?v0) )))
+))
+(let ((?x10111 (b_S_current_n_timestamp$ v_b_S_s$)))
+(let (($x10112 (= v_b_H_wrTime_S_1_T_6_o_1$ ?x10111)))
+(let (($x10109 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_6_o_1$ b_H_loc_o_len$ v_b_P_H_len$ b_T_T_u4$)))
+(let (($x10107 (b_S_local_n_value_n_is_n_ptr$ v_b_S_s$ b_H_tok_S_1_T_6_o_1$ b_H_loc_o_arr$ ?x10078 ?x2238)))
+(let (($x10106 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_6_o_1$ b_H_loc_o_arr$ ?x10105 ?x2238)))
+(let (($x11256 (forall ((?v0 B_S_pure_n_function$) )(!(let (($x11251 (>= (+ (b_S_frame_n_level$ ?v0) (* (- 1) b_S_current_n_frame_n_level$)) 0)))
+(not $x11251)) :pattern ( (b_S_frame_n_level$ ?v0) )))
+))
+(let (($x10096 (b_S_good_n_state_n_ext$ b_H_tok_S_1_T_6_o_1$ v_b_S_s$)))
+(let (($x10095 (b_S_function_n_entry$ v_b_S_s$)))
+(let (($x10089 (b_S_is_n_non_n_primitive$ ?x10076)))
+(let ((?x10086 (b_S_kind_n_of$ ?x10076)))
+(let (($x10087 (= ?x10086 b_S_kind_n_primitive$)))
+(let (($x10088 (not $x10087)))
+(let (($x10085 (b_S_typed$ v_b_S_s$ ?x10080)))
+(let ((?x10082 (b_S_owner$ v_b_S_s$ ?x10080)))
+(let (($x10083 (= ?x10082 b_S_me$)))
+(let (($x10081 (b_S_closed$ v_b_S_s$ ?x10080)))
+(let (($x11260 (not $x11259)))
+(let (($x11263 (>= v_b_P_H_len$ 1099511627776)))
+(let (($x11264 (not $x11263)))
+(let (($x11270 (>= (+ b_S_max_o_u4$ (* (- 1) v_b_SL_H_witness$)) 0)))
+(let (($x11268 (>= v_b_SL_H_witness$ 0)))
+(let (($x11278 (>= (+ b_S_max_o_u4$ (* (- 1) v_b_L_H_p$)) 0)))
+(let (($x11276 (>= v_b_L_H_p$ 0)))
+(let (($x11286 (>= (+ b_S_max_o_u1$ (* (- 1) v_b_L_H_max$)) 0)))
+(let (($x11284 (>= v_b_L_H_max$ 0)))
+(let (($x11342 (and $x11284 $x11286 $x11276 $x11278 $x11268 $x11270 $x11264 $x11260 $x10081 $x10083 $x10084 $x10085 $x10088 $x10089 $x10095 $x10096 $x10097 $x11256 $x10106 $x10107 $x10109 $x10112 $x10439 $x11243 $x11245)))
+(let (($x11844 (exists ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10238 (= ?x10163 v_b_S_result_G_0$)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x11802 (not $x11800)))
+(let ((?x3113 (* (- 1) b_S_max_o_u4$)))
+(let ((?x3114 (+ ?v0 ?x3113)))
+(let (($x3115 (<= ?x3114 0)))
+(let (($x2815 (>= ?v0 0)))
+(and $x2815 $x3115 $x11802 $x10238))))))))))
+))
+(let (($x11824 (forall ((?v0 Int) )(let ((?x11816 (* (- 1) v_b_S_result_G_0$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11818 (<= (+ ?x10163 ?x11816) 0)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x11802 (not $x11800)))
+(let ((?x3113 (* (- 1) b_S_max_o_u4$)))
+(let ((?x3114 (+ ?v0 ?x3113)))
+(let (($x3115 (<= ?x3114 0)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x11808 (and $x2815 $x3115 $x11802)))
+(let (($x11813 (not $x11808)))
+(or $x11813 $x11818)))))))))))))
+))
+(let (($x11827 (not $x11824)))
+(let (($x11847 (or $x11827 $x11844)))
+(let (($x11850 (and $x11824 $x11847)))
+(let (($x11792 (and b_S_position_n_marker$ $x11429 $x11432 $x10216 $x10218 $x10220 $x10222)))
+(let (($x11797 (not $x11792)))
+(let (($x11853 (or $x11797 $x11850)))
+(let (($x11856 (and b_S_position_n_marker$ $x11853)))
+(let (($x11772 (and $x11486 $x11429 $x11432)))
+(let (($x11777 (not $x11772)))
+(let (($x11859 (or $x11777 $x11856)))
+(let (($x11648 (not $x11647)))
+(let (($x11651 (and $x11648 $x10374)))
+(let (($x11639 (forall ((?v0 Int) )(let ((?x11631 (* (- 1) v_b_L_H_max_G_3$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11633 (<= (+ ?x10163 ?x11631) 0)))
+(let (($x11615 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
+(let (($x11617 (not $x11615)))
+(let ((?x3113 (* (- 1) b_S_max_o_u4$)))
+(let ((?x3114 (+ ?v0 ?x3113)))
+(let (($x3115 (<= ?x3114 0)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x11623 (and $x2815 $x3115 $x11617)))
+(let (($x11628 (not $x11623)))
+(or $x11628 $x11633)))))))))))))
+))
+(let (($x11642 (not $x11639)))
+(let (($x11654 (or $x11642 $x11651)))
+(let (($x11657 (and $x11639 $x11654)))
+(let (($x11660 (or $x11612 $x11657)))
+(let (($x11663 (and $x11608 $x11660)))
+(let ((?x11574 (+ b_S_max_o_u4$ ?x11484)))
+(let (($x11573 (>= ?x11574 1)))
+(let (($x11600 (and $x11570 $x11573 $x11580 $x10358 $x11578 $x11536)))
+(let (($x11605 (not $x11600)))
+(let (($x11666 (or $x11605 $x11663)))
+(let (($x11672 (and $x11570 $x11573 $x11666)))
+(let (($x11725 (and $x11516 $x11432 $x10391 $x10392 $x11429 $x11536)))
+(let (($x11730 (not $x11725)))
+(let (($x11733 (or $x11730 $x11672)))
+(let (($x11562 (and $x10321 $x10324 $x10333 $x10334 $x10335 $x10338 $x10340 $x11429 $x11536)))
+(let (($x11567 (not $x11562)))
+(let (($x11677 (or $x11567 $x11672)))
+(let (($x11683 (and $x10321 $x10324 $x11677)))
+(let (($x10323 (and $x10321 $x10322)))
+(let (($x11001 (not $x10323)))
+(let (($x11688 (or $x11001 $x11683)))
+(let (($x11694 (and $x10321 $x10322 $x11688)))
+(let (($x11527 (and $x11515 $x11429 $x11432)))
+(let (($x11532 (not $x11527)))
+(let (($x11699 (or $x11532 $x11694)))
+(let (($x11736 (and $x11699 $x11733)))
+(let (($x11507 (and $x10321 $x10324 $x11429 $x11432)))
+(let (($x11512 (not $x11507)))
+(let (($x11739 (or $x11512 $x11736)))
+(let (($x11745 (and $x10321 $x10324 $x11739)))
+(let (($x11750 (or $x11001 $x11745)))
+(let (($x11756 (and $x10321 $x10322 $x11750)))
+(let (($x11496 (and $x11487 $x11429 $x11432)))
+(let (($x11501 (not $x11496)))
+(let (($x11761 (or $x11501 $x11756)))
+(let (($x11862 (and $x11761 $x11859)))
+(let (($x11476 (and $x10284 $x10204 $x10097 $x10291 $x10292 $x10293 $x10294 $x10295 $x10296 $x11429 $x11432)))
+(let (($x11481 (not $x11476)))
+(let (($x11868 (not $x11867)))
+(let (($x11895 (forall ((?v0 Int) )(let ((?x11887 (* (- 1) v_b_L_H_max_G_1$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11889 (<= (+ ?x10163 ?x11887) 0)))
+(let (($x11871 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
+(let (($x11873 (not $x11871)))
+(let ((?x3113 (* (- 1) b_S_max_o_u4$)))
+(let ((?x3114 (+ ?v0 ?x3113)))
+(let (($x3115 (<= ?x3114 0)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x11879 (and $x2815 $x3115 $x11873)))
+(let (($x11884 (not $x11879)))
+(or $x11884 $x11889)))))))))))))
+))
+(let (($x11904 (>= ?x11574 0)))
+(let (($x11907 (>= (+ b_S_max_o_u4$ ?x11865) 0)))
+(let (($x11914 (>= (+ b_S_max_o_u1$ (* (- 1) v_b_L_H_max_G_1$)) 0)))
+(let (($x11957 (and $x11260 $x10167 $x11911 $x11914 $x11907 $x11901 $x11904 $x11898 $x11895 $x11868 $x10192 $x11429 $x11432)))
+(let (($x11962 (not $x11957)))
+(let (($x11971 (or $x11962 $x11481 $x11862)))
+(let (($x11979 (and $x11260 $x10167 $x11971)))
+(let (($x11411 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11404 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x10163)) 0)))
+(let (($x11388 (>= ?v0 1)))
+(let (($x11389 (not $x11388)))
+(let ((?x3113 (* (- 1) b_S_max_o_u4$)))
+(let ((?x3114 (+ ?v0 ?x3113)))
+(let (($x3115 (<= ?x3114 0)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x11395 (and $x2815 $x3115 $x11389)))
+(let (($x11400 (not $x11395)))
+(or $x11400 $x11404))))))))))))
+))
+(let (($x11414 (not $x11411)))
+(let (($x11984 (or $x11414 $x11979)))
+(let (($x11987 (and $x11411 $x11984)))
+(let (($x11382 (>= v_b_P_H_len$ 1)))
+(let (($x11385 (not $x11382)))
+(let (($x11990 (or $x11385 $x11987)))
+(let (($x11993 (and $x11382 $x11990)))
+(let (($x10148 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_16_o_8$ b_H_loc_o_p$ 1 b_T_T_u4$)))
+(let (($x10147 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_14_o_3$ b_H_loc_o_witness$ 0 b_T_T_u4$)))
+(let (($x10146 (b_S_local_n_value_n_is$ v_b_S_s$ b_H_tok_S_1_T_12_o_3$ b_H_loc_o_max$ v_b_L_H_max_G_0$ b_T_T_u1$)))
+(let (($x10145 (= v_b_L_H_max_G_0$ ?x10144)))
+(let (($x10138 (b_S_is$ ?x10137 b_T_T_u1$)))
+(let (($x11374 (and $x10138 $x10141 $x10145 $x10146 $x10147 $x10148)))
+(let (($x11379 (not $x11374)))
+(let (($x11996 (or $x11379 $x11993)))
+(let (($x12002 (and $x10138 $x10141 $x11996)))
+(let (($x10140 (and $x10138 $x10139)))
+(let (($x11209 (not $x10140)))
+(let (($x12007 (or $x11209 $x12002)))
+(let (($x12013 (and $x10138 $x10139 $x12007)))
+(let (($x10136 (b_S_in_n_domain_n_lab$ v_b_S_s$ ?x10080 ?x10080 b_l_H_public$)))
+(let (($x11221 (not $x10136)))
+(let (($x12018 (or $x11221 $x12013)))
+(let (($x12021 (and $x10136 $x12018)))
+(let (($x12027 (not (or (not $x11342) $x12021))))
+(let (($x10242 (exists ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10238 (= ?x10163 v_b_S_result_G_0$)))
+(let (($x10233 (< ?v0 v_b_P_H_len$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(and $x2766 (and $x3097 (and $x10233 $x10238)))))))))
+))
+(let (($x10244 (and $x10242 (=> $x10242 true))))
+(let (($x10237 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10235 (<= ?x10163 v_b_S_result_G_0$)))
+(let (($x10233 (< ?v0 v_b_P_H_len$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10234 (and $x3098 $x10233)))
+(=> $x10234 $x10235)))))))))
+))
+(let (($x10245 (=> $x10237 $x10244)))
+(let (($x10227 (and true (and $x10216 (and $x10218 (and $x10220 (and $x10222 true)))))))
+(let (($x10174 (<= 0 v_b_SL_H_witness_G_0$)))
+(let (($x10181 (<= 1 v_b_L_H_p_G_0$)))
+(let (($x10182 (and $x10181 $x10174)))
+(let (($x10230 (and true (and $x10182 (and $x10182 $x10227)))))
+(let (($x10247 (=> (and b_S_position_n_marker$ (and $x10182 $x10230)) (and $x10237 $x10245))))
+(let (($x10248 (and b_S_position_n_marker$ $x10247)))
+(let (($x10206 (and true $x10182)))
+(let (($x10207 (and $x10182 $x10206)))
+(let (($x10411 (and $x10182 $x10207)))
+(let (($x10412 (and true $x10411)))
+(let (($x10413 (and $x10182 $x10412)))
+(let (($x10410 (<= v_b_P_H_len$ v_b_L_H_p_G_0$)))
+(let (($x10416 (and true (and $x10182 (and $x10410 $x10413)))))
+(let (($x10417 (=> $x10416 $x10248)))
+(let (($x10377 (=> (and (and (< v_b_SL_H_witness_G_1$ v_b_P_H_len$) $x10374) false) true)))
+(let (($x10375 (and (< v_b_SL_H_witness_G_1$ v_b_P_H_len$) $x10374)))
+(let (($x10378 (and $x10375 $x10377)))
+(let (($x10370 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10368 (<= ?x10163 v_b_L_H_max_G_3$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10367 (and $x3098 (< ?v0 v_b_L_H_p_G_1$))))
+(=> $x10367 $x10368))))))))
+))
+(let (($x10379 (=> $x10370 $x10378)))
+(let (($x10365 (<= v_b_L_H_p_G_1$ v_b_P_H_len$)))
+(let (($x10381 (=> $x10365 (and $x10370 $x10379))))
+(let (($x10341 (<= 0 v_b_SL_H_witness_G_1$)))
+(let (($x10360 (and (<= 2 v_b_L_H_p_G_1$) $x10341)))
+(let (($x10363 (and (= v_b_L_H_p_G_1$ (+ v_b_L_H_p_G_0$ 1)) (and $x10358 (and $x10360 true)))))
+(let (($x10355 (and (<= 0 (+ v_b_L_H_p_G_0$ 1)) (<= (+ v_b_L_H_p_G_0$ 1) b_S_max_o_u4$))))
+(let (($x10383 (=> (and $x10355 $x10363) (and $x10365 $x10381))))
+(let (($x10384 (and $x10355 $x10383)))
+(let (($x10395 (and true (and $x10391 (and $x10392 (and true (and $x10181 $x10341)))))))
+(let (($x10398 (and true (and $x10182 (and $x10182 $x10395)))))
+(let (($x10390 (<= ?x10327 v_b_L_H_max_G_1$)))
+(let (($x10402 (and true (and $x10182 (and $x10390 (and $x10182 $x10398))))))
+(let (($x10403 (=> $x10402 $x10384)))
+(let (($x10346 (and true (and $x10338 (and $x10340 (and true (and $x10181 $x10341)))))))
+(let (($x10325 (and $x10321 $x10324)))
+(let (($x10351 (and $x10325 (and $x10333 (and $x10334 (and $x10335 (and (and $x10181 $x10181) $x10346)))))))
+(let (($x10385 (=> $x10351 $x10384)))
+(let (($x10387 (=> $x10323 (and $x10325 $x10385))))
+(let (($x10331 (and true (and $x10182 (and (< v_b_L_H_max_G_1$ ?x10327) $x10207)))))
+(let (($x10389 (=> $x10331 (and $x10323 $x10387))))
+(let (($x10326 (and $x10325 $x10182)))
+(let (($x10405 (=> $x10326 (and $x10389 $x10403))))
+(let (($x10407 (=> $x10323 (and $x10325 $x10405))))
+(let (($x10319 (and true (and $x10182 (and (< v_b_L_H_p_G_0$ v_b_P_H_len$) $x10207)))))
+(let (($x10409 (=> $x10319 (and $x10323 $x10407))))
+(let (($x10300 (and (= ?x10272 ?x10272) (= (b_S_statusmap$ v_b_S_s$) (b_S_statusmap$ v_b_S_s$)))))
+(let (($x10301 (and $x10300 $x10182)))
+(let (($x10297 (and $x10295 $x10296)))
+(let (($x10205 (and $x10204 $x10097)))
+(let (($x10307 (and $x10205 (and $x10291 (and $x10292 (and $x10293 (and $x10294 (and $x10297 $x10301))))))))
+(let (($x10283 (forall ((?v0 B_S_ptr$) )(!(let ((?x10280 (b_S_timestamp$ v_b_S_s$ ?v0)))
+(<= ?x10280 ?x10280)) :pattern ( (b_S_timestamp$ v_b_S_s$ ?v0) )))
+))
+(let (($x10286 (and (<= ?x10111 ?x10111) (and $x10283 $x10284))))
+(let (($x10278 (forall ((?v0 B_S_ptr$) )(!(let (($x10260 (b_S_thread_n_local$ v_b_S_s$ ?v0)))
+(let ((?x10272 (b_S_typemap$ v_b_S_s$)))
+(let ((?x10273 (b_S_select_o_tm$ ?x10272 ?v0)))
+(let (($x10275 (and (= ?x10273 ?x10273) $x10260)))
+(=> $x10260 $x10275))))) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ v_b_S_s$) ?v0) )))
+))
+(let (($x10287 (and $x10278 $x10286)))
+(let (($x10271 (forall ((?v0 B_S_ptr$) )(!(let (($x10260 (b_S_thread_n_local$ v_b_S_s$ ?v0)))
+(let ((?x10256 (b_S_statusmap$ v_b_S_s$)))
+(let ((?x10257 (b_S_select_o_sm$ ?x10256 ?v0)))
+(let (($x10269 (and (= ?x10257 ?x10257) $x10260)))
+(=> $x10260 $x10269))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ v_b_S_s$) ?v0) )))
+))
+(let (($x10288 (and $x10271 $x10287)))
+(let (($x10267 (forall ((?v0 B_S_ptr$) )(!(let (($x10260 (b_S_thread_n_local$ v_b_S_s$ ?v0)))
+(let ((?x10261 (b_S_memory$ v_b_S_s$)))
+(let ((?x10262 (b_S_select_o_mem$ ?x10261 ?v0)))
+(let (($x10264 (and (= ?x10262 ?x10262) $x10260)))
+(=> $x10260 $x10264))))) :pattern ( (b_S_select_o_mem$ (b_S_memory$ v_b_S_s$) ?v0) )))
+))
+(let (($x10289 (and $x10267 $x10288)))
+(let (($x10259 (forall ((?v0 B_S_ptr$) )(!(let (($x10253 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_owner$ v_b_S_s$ ?v0))) b_S_kind_n_thread$)))
+(=> (not $x10253) (not $x10253))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ v_b_S_s$) ?v0) )))
+))
+(let (($x10290 (and $x10259 $x10289)))
+(let (($x10311 (and true (and $x10182 (and $x10290 (and $x10286 $x10307))))))
+(let (($x10313 (and true (and $x10182 $x10311))))
+(let (($x10315 (and true (and $x10182 $x10313))))
+(let (($x10419 (=> $x10315 (and $x10409 $x10417))))
+(let (($x10203 (not true)))
+(let (($x10212 (and $x10203 (and $x10182 (and true (and $x10182 (and $x10205 $x10207)))))))
+(let (($x10213 (and $x10182 $x10212)))
+(let (($x10214 (and true $x10213)))
+(let (($x10249 (=> $x10214 $x10248)))
+(let (($x10420 (and $x10249 $x10419)))
+(let (($x10194 (and (and (< v_b_SL_H_witness_G_0$ v_b_P_H_len$) $x10192) $x10182)))
+(let (($x10188 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10186 (<= ?x10163 v_b_L_H_max_G_1$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10185 (and $x3098 (< ?v0 v_b_L_H_p_G_0$))))
+(=> $x10185 $x10186))))))))
+))
+(let (($x10183 (<= v_b_L_H_p_G_0$ v_b_P_H_len$)))
+(let (($x10180 (and (<= 0 v_b_L_H_p_G_0$) (<= v_b_L_H_p_G_0$ b_S_max_o_u4$))))
+(let (($x10176 (and $x10174 (<= v_b_SL_H_witness_G_0$ b_S_max_o_u4$))))
+(let (($x10172 (and (<= 0 v_b_L_H_max_G_1$) (<= v_b_L_H_max_G_1$ b_S_max_o_u1$))))
+(let (($x10200 (and $x10172 (and $x10176 (and $x10180 (and $x10182 (and $x10183 (and $x10188 $x10194))))))))
+(let (($x10201 (and true $x10200)))
+(let (($x10074 (< 0 v_b_P_H_len$)))
+(let (($x10168 (and $x10074 $x10167)))
+(let (($x10421 (=> (and $x10168 $x10201) $x10420)))
+(let (($x10166 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10164 (<= ?x10163 v_b_L_H_max_G_0$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10161 (and $x3098 (< ?v0 1))))
+(=> $x10161 $x10164))))))))
+))
+(let (($x10423 (=> $x10166 (and $x10168 $x10421))))
+(let (($x10159 (<= 1 v_b_P_H_len$)))
+(let (($x10425 (=> $x10159 (and $x10166 $x10423))))
+(let (($x10149 (<= 1 1)))
+(let (($x10154 (and $x10148 (and $x10149 (and $x10149 (and (<= 0 0) (<= 0 0)))))))
+(let (($x10142 (and $x10138 $x10141)))
+(let (($x10427 (=> (and $x10142 (and $x10145 (and $x10146 (and $x10147 $x10154)))) (and $x10159 $x10425))))
+(let (($x10429 (=> $x10140 (and $x10142 $x10427))))
+(let (($x10431 (=> $x10136 (and $x10140 $x10429))))
+(let (($x10119 (and (<= 0 v_b_P_H_len$) (<= v_b_P_H_len$ b_S_max_o_u4$))))
+(let (($x10116 (forall ((?v0 B_S_ptr$) )(!(let (($x10113 (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?v0)))
+(= $x10113 false)) :pattern ( (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?v0) )))
+))
+(let (($x10108 (and $x10106 $x10107)))
+(let (($x10104 (forall ((?v0 B_S_pure_n_function$) )(!(let ((?x10100 (b_S_frame_n_level$ ?v0)))
+(< ?x10100 b_S_current_n_frame_n_level$)) :pattern ( (b_S_frame_n_level$ ?v0) )))
+))
+(let (($x10098 (and $x10096 $x10097)))
+(let (($x10125 (and $x10098 (and $x10104 (and $x10108 (and $x10109 (and $x10112 (and $x10116 $x10119))))))))
+(let (($x10127 (and true (and $x10095 $x10125))))
+(let (($x10094 (and $x10081 (and $x10083 (and $x10084 (and $x10085 (and $x10088 $x10089)))))))
+(let (($x10073 (< v_b_P_H_len$ 1099511627776)))
+(let (($x10071 (and (<= 0 v_b_SL_H_witness$) (<= v_b_SL_H_witness$ b_S_max_o_u4$))))
+(let (($x10067 (and (<= 0 v_b_L_H_p$) (<= v_b_L_H_p$ b_S_max_o_u4$))))
+(let (($x10063 (and (<= 0 v_b_L_H_max$) (<= v_b_L_H_max$ b_S_max_o_u1$))))
+(let (($x10133 (and $x10063 (and $x10067 (and $x10071 (and $x10073 (and $x10074 (and $x10094 $x10127))))))))
+(let (($x10134 (and true $x10133)))
+(let (($x10433 (=> $x10134 (and $x10136 $x10431))))
+(let (($x10434 (not $x10433)))
+(let (($x10649 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10235 (<= ?x10163 v_b_S_result_G_0$)))
+(let (($x10233 (< ?v0 v_b_P_H_len$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10234 (and $x3098 $x10233)))
+(or (not $x10234) $x10235)))))))))
+))
+(let (($x10665 (or (not $x10649) $x10242)))
+(let (($x10670 (and $x10649 $x10665)))
+(let (($x10616 (and $x10216 (and $x10218 (and $x10220 $x10222)))))
+(let (($x10626 (and $x10182 $x10616)))
+(let (($x10629 (and $x10182 $x10626)))
+(let (($x10639 (and $x10182 $x10629)))
+(let (($x10642 (and b_S_position_n_marker$ $x10639)))
+(let (($x10677 (or (not $x10642) $x10670)))
+(let (($x10682 (and b_S_position_n_marker$ $x10677)))
+(let (($x11134 (or (not (and $x10182 (and $x10410 $x10182))) $x10682)))
+(let (($x10931 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10368 (<= ?x10163 v_b_L_H_max_G_3$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10367 (and $x3098 (< ?v0 v_b_L_H_p_G_1$))))
+(or (not $x10367) $x10368))))))))
+))
+(let (($x10954 (or (not $x10931) $x10375)))
+(let (($x10959 (and $x10931 $x10954)))
+(let (($x10966 (or (not $x10365) $x10959)))
+(let (($x10971 (and $x10365 $x10966)))
+(let (($x10918 (and $x10358 $x10360)))
+(let ((?x10901 (+ 1 v_b_L_H_p_G_0$)))
+(let (($x10913 (= v_b_L_H_p_G_1$ ?x10901)))
+(let (($x10921 (and $x10913 $x10918)))
+(let (($x10907 (<= ?x10901 b_S_max_o_u4$)))
+(let (($x10904 (<= 0 ?x10901)))
+(let (($x10910 (and $x10904 $x10907)))
+(let (($x10924 (and $x10910 $x10921)))
+(let (($x10978 (or (not $x10924) $x10971)))
+(let (($x10983 (and $x10910 $x10978)))
+(let (($x10342 (and $x10181 $x10341)))
+(let (($x11019 (and $x10392 $x10342)))
+(let (($x11022 (and $x10391 $x11019)))
+(let (($x11032 (and $x10182 $x11022)))
+(let (($x11035 (and $x10182 $x11032)))
+(let (($x11045 (and $x10182 $x11035)))
+(let (($x11048 (and $x10390 $x11045)))
+(let (($x11051 (and $x10182 $x11048)))
+(let (($x11065 (or (not $x11051) $x10983)))
+(let (($x10873 (and $x10340 $x10342)))
+(let (($x10876 (and $x10338 $x10873)))
+(let (($x10886 (and $x10181 $x10876)))
+(let (($x10889 (and $x10335 $x10886)))
+(let (($x10892 (and $x10334 $x10889)))
+(let (($x10895 (and $x10333 $x10892)))
+(let (($x10898 (and $x10325 $x10895)))
+(let (($x10990 (or (not $x10898) $x10983)))
+(let (($x10995 (and $x10325 $x10990)))
+(let (($x11002 (or $x11001 $x10995)))
+(let (($x11007 (and $x10323 $x11002)))
+(let (($x11014 (or (not (and $x10182 (and (< v_b_L_H_max_G_1$ ?x10327) $x10182))) $x11007)))
+(let (($x11070 (and $x11014 $x11065)))
+(let (($x11077 (or (not $x10326) $x11070)))
+(let (($x11082 (and $x10325 $x11077)))
+(let (($x11088 (or $x11001 $x11082)))
+(let (($x11093 (and $x10323 $x11088)))
+(let (($x11100 (or (not (and $x10182 (and (< v_b_L_H_p_G_0$ v_b_P_H_len$) $x10182))) $x11093)))
+(let (($x11139 (and $x11100 $x11134)))
+(let (($x10789 (and $x10297 $x10182)))
+(let (($x10792 (and $x10294 $x10789)))
+(let (($x10795 (and $x10293 $x10792)))
+(let (($x10798 (and $x10292 $x10795)))
+(let (($x10801 (and $x10291 $x10798)))
+(let (($x10804 (and $x10205 $x10801)))
+(let (($x10807 (and $x10286 $x10804)))
+(let (($x10810 (and $x10286 $x10807)))
+(let (($x10813 (and $x10182 $x10810)))
+(let (($x10823 (and $x10182 $x10813)))
+(let (($x10833 (and $x10182 $x10823)))
+(let (($x11146 (or (not $x10833) $x11139)))
+(let (($x10529 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10186 (<= ?x10163 v_b_L_H_max_G_1$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10185 (and $x3098 (< ?v0 v_b_L_H_p_G_0$))))
+(or (not $x10185) $x10186))))))))
+))
+(let (($x10532 (and $x10529 $x10194)))
+(let (($x10535 (and $x10183 $x10532)))
+(let (($x10538 (and $x10182 $x10535)))
+(let (($x10541 (and $x10180 $x10538)))
+(let (($x10544 (and $x10176 $x10541)))
+(let (($x10547 (and $x10172 $x10544)))
+(let (($x10557 (and $x10168 $x10547)))
+(let (($x11162 (or (not $x10557) $x11146)))
+(let (($x11167 (and $x10168 $x11162)))
+(let (($x10522 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10164 (<= ?x10163 v_b_L_H_max_G_0$)))
+(let (($x3097 (<= ?v0 b_S_max_o_u4$)))
+(let (($x2766 (<= 0 ?v0)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10161 (and $x3098 (< ?v0 1))))
+(or (not $x10161) $x10164))))))))
+))
+(let (($x11174 (or (not $x10522) $x11167)))
+(let (($x11179 (and $x10522 $x11174)))
+(let (($x11186 (or (not $x10159) $x11179)))
+(let (($x11191 (and $x10159 $x11186)))
+(let (($x10150 (<= 0 0)))
+(let (($x10497 (and $x10149 $x10150)))
+(let (($x10500 (and $x10149 $x10497)))
+(let (($x10503 (and $x10148 $x10500)))
+(let (($x10506 (and $x10147 $x10503)))
+(let (($x10509 (and $x10146 $x10506)))
+(let (($x10512 (and $x10145 $x10509)))
+(let (($x10515 (and $x10142 $x10512)))
+(let (($x11198 (or (not $x10515) $x11191)))
+(let (($x11203 (and $x10142 $x11198)))
+(let (($x11210 (or $x11209 $x11203)))
+(let (($x11215 (and $x10140 $x11210)))
+(let (($x11222 (or $x11221 $x11215)))
+(let (($x11227 (and $x10136 $x11222)))
+(let (($x10442 (and $x10439 $x10119)))
+(let (($x10445 (and $x10112 $x10442)))
+(let (($x10448 (and $x10109 $x10445)))
+(let (($x10451 (and $x10108 $x10448)))
+(let (($x10454 (and $x10104 $x10451)))
+(let (($x10457 (and $x10098 $x10454)))
+(let (($x10460 (and $x10095 $x10457)))
+(let (($x10470 (and $x10094 $x10460)))
+(let (($x10473 (and $x10074 $x10470)))
+(let (($x10476 (and $x10073 $x10473)))
+(let (($x10479 (and $x10071 $x10476)))
+(let (($x10482 (and $x10067 $x10479)))
+(let (($x10485 (and $x10063 $x10482)))
+(let (($x11234 (or (not $x10485) $x11227)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ ?x10078 ?0 b_T_T_u1$))))
+(let (($x10238 (= ?x10163 v_b_S_result_G_0$)))
+(let (($x11800 (>= (+ ?0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x11802 (not $x11800)))
+(let ((?x3113 (* (- 1) b_S_max_o_u4$)))
+(let ((?x3114 (+ ?0 ?x3113)))
+(let (($x3115 (<= ?x3114 0)))
+(let (($x2815 (>= ?0 0)))
+(let (($x11839 (and $x2815 $x3115 $x11802 $x10238)))
+(let (($x2766 (<= 0 ?0)))
+(let (($x10241 (and $x2766 (and (<= ?0 b_S_max_o_u4$) (and (< ?0 v_b_P_H_len$) $x10238)))))
+(let (($x11834 (= (and (<= ?0 b_S_max_o_u4$) (and (< ?0 v_b_P_H_len$) $x10238)) (and $x3115 (and $x11802 $x10238)))))
+(let ((@x11832 (monotonicity (rewrite (= (< ?0 v_b_P_H_len$) $x11802)) (= (and (< ?0 v_b_P_H_len$) $x10238) (and $x11802 $x10238)))))
+(let ((@x2814 (rewrite (= $x2766 $x2815))))
+(let ((@x11838 (monotonicity @x2814 (monotonicity (rewrite (= (<= ?0 b_S_max_o_u4$) $x3115)) @x11832 $x11834) (= $x10241 (and $x2815 (and $x3115 (and $x11802 $x10238)))))))
+(let ((@x11843 (trans @x11838 (rewrite (= (and $x2815 (and $x3115 (and $x11802 $x10238))) $x11839)) (= $x10241 $x11839))))
+(let (($x11818 (<= (+ ?x10163 (* (- 1) v_b_S_result_G_0$)) 0)))
+(let (($x11808 (and $x2815 $x3115 $x11802)))
+(let (($x11813 (not $x11808)))
+(let (($x11821 (or $x11813 $x11818)))
+(let (($x10235 (<= ?x10163 v_b_S_result_G_0$)))
+(let (($x10233 (< ?0 v_b_P_H_len$)))
+(let (($x3097 (<= ?0 b_S_max_o_u4$)))
+(let (($x3098 (and $x2766 $x3097)))
+(let (($x10234 (and $x3098 $x10233)))
+(let (($x10646 (or (not $x10234) $x10235)))
+(let ((@x3124 (monotonicity @x2814 (rewrite (= $x3097 $x3115)) (= $x3098 (and $x2815 $x3115)))))
+(let ((@x11807 (monotonicity @x3124 (rewrite (= $x10233 $x11802)) (= $x10234 (and (and $x2815 $x3115) $x11802)))))
+(let ((@x11812 (trans @x11807 (rewrite (= (and (and $x2815 $x3115) $x11802) $x11808)) (= $x10234 $x11808))))
+(let ((@x11823 (monotonicity (monotonicity @x11812 (= (not $x10234) $x11813)) (rewrite (= $x10235 $x11818)) (= $x10646 $x11821))))
+(let ((@x11829 (monotonicity (quant-intro @x11823 (= $x10649 $x11824)) (= (not $x10649) $x11827))))
+(let ((@x11852 (monotonicity (quant-intro @x11823 (= $x10649 $x11824)) (monotonicity @x11829 (quant-intro @x11843 (= $x10242 $x11844)) (= $x10665 $x11847)) (= $x10670 $x11850))))
+(let (($x11434 (and $x11429 $x11432)))
+(let (($x11793 (= (and b_S_position_n_marker$ (and $x11434 (and $x11434 (and $x11434 $x10616)))) $x11792)))
+(let (($x11790 (= $x10642 (and b_S_position_n_marker$ (and $x11434 (and $x11434 (and $x11434 $x10616)))))))
+(let ((@x11430 (rewrite (= $x10181 $x11429))))
+(let ((@x11436 (monotonicity @x11430 (rewrite (= $x10174 $x11432)) (= $x10182 $x11434))))
+(let ((@x11785 (monotonicity @x11436 (monotonicity @x11436 (= $x10626 (and $x11434 $x10616))) (= $x10629 (and $x11434 (and $x11434 $x10616))))))
+(let ((@x11788 (monotonicity @x11436 @x11785 (= $x10639 (and $x11434 (and $x11434 (and $x11434 $x10616)))))))
+(let ((@x11799 (monotonicity (trans (monotonicity @x11788 $x11790) (rewrite $x11793) (= $x10642 $x11792)) (= (not $x10642) $x11797))))
+(let ((@x11858 (monotonicity (monotonicity @x11799 @x11852 (= $x10677 $x11853)) (= $x10682 $x11856))))
+(let ((@x11768 (monotonicity (rewrite (= $x10410 $x11486)) @x11436 (= (and $x10410 $x10182) (and $x11486 $x11434)))))
+(let ((@x11771 (monotonicity @x11436 @x11768 (= (and $x10182 (and $x10410 $x10182)) (and $x11434 (and $x11486 $x11434))))))
+(let ((@x11776 (trans @x11771 (rewrite (= (and $x11434 (and $x11486 $x11434)) $x11772)) (= (and $x10182 (and $x10410 $x10182)) $x11772))))
+(let ((@x11861 (monotonicity (monotonicity @x11776 (= (not (and $x10182 (and $x10410 $x10182))) $x11777)) @x11858 (= $x11134 $x11859))))
+(let ((@x11653 (monotonicity (rewrite (= (< v_b_SL_H_witness_G_1$ v_b_P_H_len$) $x11648)) (= $x10375 $x11651))))
+(let (($x11633 (<= (+ ?x10163 (* (- 1) v_b_L_H_max_G_3$)) 0)))
+(let (($x11615 (>= (+ ?0 ?x11581) 0)))
+(let (($x11617 (not $x11615)))
+(let (($x11623 (and $x2815 $x3115 $x11617)))
+(let (($x11628 (not $x11623)))
+(let (($x11636 (or $x11628 $x11633)))
+(let (($x10368 (<= ?x10163 v_b_L_H_max_G_3$)))
+(let (($x10928 (or (not (and $x3098 (< ?0 v_b_L_H_p_G_1$))) $x10368)))
+(let ((@x11622 (monotonicity @x3124 (rewrite (= (< ?0 v_b_L_H_p_G_1$) $x11617)) (= (and $x3098 (< ?0 v_b_L_H_p_G_1$)) (and (and $x2815 $x3115) $x11617)))))
+(let ((@x11627 (trans @x11622 (rewrite (= (and (and $x2815 $x3115) $x11617) $x11623)) (= (and $x3098 (< ?0 v_b_L_H_p_G_1$)) $x11623))))
+(let ((@x11630 (monotonicity @x11627 (= (not (and $x3098 (< ?0 v_b_L_H_p_G_1$))) $x11628))))
+(let ((@x11641 (quant-intro (monotonicity @x11630 (rewrite (= $x10368 $x11633)) (= $x10928 $x11636)) (= $x10931 $x11639))))
+(let ((@x11656 (monotonicity (monotonicity @x11641 (= (not $x10931) $x11642)) @x11653 (= $x10954 $x11654))))
+(let ((@x11662 (monotonicity (monotonicity (rewrite (= $x10365 $x11608)) (= (not $x10365) $x11612)) (monotonicity @x11641 @x11656 (= $x10959 $x11657)) (= $x10966 $x11660))))
+(let (($x11601 (= (and (and $x11570 $x11573) (and $x11580 (and $x10358 (and $x11578 $x11536)))) $x11600)))
+(let (($x11598 (= $x10924 (and (and $x11570 $x11573) (and $x11580 (and $x10358 (and $x11578 $x11536)))))))
+(let ((@x11587 (monotonicity (rewrite (= (<= 2 v_b_L_H_p_G_1$) $x11578)) (rewrite (= $x10341 $x11536)) (= $x10360 (and $x11578 $x11536)))))
+(let ((@x11593 (monotonicity (rewrite (= $x10913 $x11580)) (monotonicity @x11587 (= $x10918 (and $x10358 (and $x11578 $x11536)))) (= $x10921 (and $x11580 (and $x10358 (and $x11578 $x11536)))))))
+(let ((@x11596 (monotonicity (rewrite (= $x10904 $x11570)) (rewrite (= $x10907 $x11573)) (= $x10910 (and $x11570 $x11573)))))
+(let ((@x11607 (monotonicity (trans (monotonicity @x11596 @x11593 $x11598) (rewrite $x11601) (= $x10924 $x11600)) (= (not $x10924) $x11605))))
+(let ((@x11668 (monotonicity @x11607 (monotonicity (rewrite (= $x10365 $x11608)) @x11662 (= $x10971 $x11663)) (= $x10978 $x11666))))
+(let ((@x11676 (trans (monotonicity @x11596 @x11668 (= $x10983 (and (and $x11570 $x11573) $x11666))) (rewrite (= (and (and $x11570 $x11573) $x11666) $x11672)) (= $x10983 $x11672))))
+(let (($x11716 (and $x11434 (and $x11434 (and $x11434 (and $x10391 (and $x10392 (and $x11429 $x11536))))))))
+(let (($x11714 (= $x11035 (and $x11434 (and $x11434 (and $x10391 (and $x10392 (and $x11429 $x11536))))))))
+(let ((@x11540 (monotonicity @x11430 (rewrite (= $x10341 $x11536)) (= $x10342 (and $x11429 $x11536)))))
+(let ((@x11709 (monotonicity (monotonicity @x11540 (= $x11019 (and $x10392 (and $x11429 $x11536)))) (= $x11022 (and $x10391 (and $x10392 (and $x11429 $x11536)))))))
+(let ((@x11712 (monotonicity @x11436 @x11709 (= $x11032 (and $x11434 (and $x10391 (and $x10392 (and $x11429 $x11536))))))))
+(let ((@x11721 (monotonicity (rewrite (= $x10390 $x11516)) (monotonicity @x11436 (monotonicity @x11436 @x11712 $x11714) (= $x11045 $x11716)) (= $x11048 (and $x11516 $x11716)))))
+(let ((@x11729 (trans (monotonicity @x11436 @x11721 (= $x11051 (and $x11434 (and $x11516 $x11716)))) (rewrite (= (and $x11434 (and $x11516 $x11716)) $x11725)) (= $x11051 $x11725))))
+(let ((@x11735 (monotonicity (monotonicity @x11729 (= (not $x11051) $x11730)) @x11676 (= $x11065 $x11733))))
+(let (($x11553 (and $x10334 (and $x10335 (and $x11429 (and $x10338 (and $x10340 (and $x11429 $x11536))))))))
+(let (($x11551 (= $x10889 (and $x10335 (and $x11429 (and $x10338 (and $x10340 (and $x11429 $x11536))))))))
+(let ((@x11546 (monotonicity (monotonicity @x11540 (= $x10873 (and $x10340 (and $x11429 $x11536)))) (= $x10876 (and $x10338 (and $x10340 (and $x11429 $x11536)))))))
+(let ((@x11549 (monotonicity @x11430 @x11546 (= $x10886 (and $x11429 (and $x10338 (and $x10340 (and $x11429 $x11536))))))))
+(let ((@x11558 (monotonicity (monotonicity (monotonicity @x11549 $x11551) (= $x10892 $x11553)) (= $x10895 (and $x10333 $x11553)))))
+(let ((@x11566 (trans (monotonicity @x11558 (= $x10898 (and $x10325 (and $x10333 $x11553)))) (rewrite (= (and $x10325 (and $x10333 $x11553)) $x11562)) (= $x10898 $x11562))))
+(let ((@x11679 (monotonicity (monotonicity @x11566 (= (not $x10898) $x11567)) @x11676 (= $x10990 $x11677))))
+(let ((@x11687 (trans (monotonicity @x11679 (= $x10995 (and $x10325 $x11677))) (rewrite (= (and $x10325 $x11677) $x11683)) (= $x10995 $x11683))))
+(let ((@x11693 (monotonicity (monotonicity @x11687 (= $x11002 $x11688)) (= $x11007 (and $x10323 $x11688)))))
+(let (($x10328 (< v_b_L_H_max_G_1$ ?x10327)))
+(let (($x10856 (and $x10328 $x10182)))
+(let (($x10859 (and $x10182 $x10856)))
+(let ((@x11523 (monotonicity (rewrite (= $x10328 $x11515)) @x11436 (= $x10856 (and $x11515 $x11434)))))
+(let ((@x11531 (trans (monotonicity @x11436 @x11523 (= $x10859 (and $x11434 (and $x11515 $x11434)))) (rewrite (= (and $x11434 (and $x11515 $x11434)) $x11527)) (= $x10859 $x11527))))
+(let ((@x11701 (monotonicity (monotonicity @x11531 (= (not $x10859) $x11532)) (trans @x11693 (rewrite (= (and $x10323 $x11688) $x11694)) (= $x11007 $x11694)) (= $x11014 $x11699))))
+(let ((@x11511 (trans (monotonicity @x11436 (= $x10326 (and $x10325 $x11434))) (rewrite (= (and $x10325 $x11434) $x11507)) (= $x10326 $x11507))))
+(let ((@x11741 (monotonicity (monotonicity @x11511 (= (not $x10326) $x11512)) (monotonicity @x11701 @x11735 (= $x11070 $x11736)) (= $x11077 $x11739))))
+(let ((@x11749 (trans (monotonicity @x11741 (= $x11082 (and $x10325 $x11739))) (rewrite (= (and $x10325 $x11739) $x11745)) (= $x11082 $x11745))))
+(let ((@x11755 (monotonicity (monotonicity @x11749 (= $x11088 $x11750)) (= $x11093 (and $x10323 $x11750)))))
+(let (($x11502 (= (not (and $x10182 (and (< v_b_L_H_p_G_0$ v_b_P_H_len$) $x10182))) $x11501)))
+(let (($x10316 (< v_b_L_H_p_G_0$ v_b_P_H_len$)))
+(let (($x10843 (and $x10316 $x10182)))
+(let (($x10846 (and $x10182 $x10843)))
+(let ((@x11492 (monotonicity (rewrite (= $x10316 $x11487)) @x11436 (= $x10843 (and $x11487 $x11434)))))
+(let ((@x11500 (trans (monotonicity @x11436 @x11492 (= $x10846 (and $x11434 (and $x11487 $x11434)))) (rewrite (= (and $x11434 (and $x11487 $x11434)) $x11496)) (= $x10846 $x11496))))
+(let ((@x11763 (monotonicity (monotonicity @x11500 $x11502) (trans @x11755 (rewrite (= (and $x10323 $x11750) $x11756)) (= $x11093 $x11756)) (= $x11100 $x11761))))
+(let (($x11452 (and $x10205 (and $x10291 (and $x10292 (and $x10293 (and $x10294 (and $x10297 $x11434))))))))
+(let (($x11458 (and true (and true $x10284))))
+(let (($x11477 (= (and $x11434 (and $x11434 (and $x11434 (and $x11458 (and $x11458 $x11452))))) $x11476)))
+(let (($x11474 (= $x10833 (and $x11434 (and $x11434 (and $x11434 (and $x11458 (and $x11458 $x11452))))))))
+(let (($x11450 (= $x10801 (and $x10291 (and $x10292 (and $x10293 (and $x10294 (and $x10297 $x11434))))))))
+(let ((@x11442 (monotonicity (monotonicity @x11436 (= $x10789 (and $x10297 $x11434))) (= $x10792 (and $x10294 (and $x10297 $x11434))))))
+(let ((@x11448 (monotonicity (monotonicity @x11442 (= $x10795 (and $x10293 (and $x10294 (and $x10297 $x11434))))) (= $x10798 (and $x10292 (and $x10293 (and $x10294 (and $x10297 $x11434))))))))
+(let (($x11419 (forall ((?v0 B_S_ptr$) )(!true :pattern ( (b_S_timestamp$ v_b_S_s$ ?v0) )))
+))
+(let (($x11417 (= (<= (b_S_timestamp$ v_b_S_s$ ?0) (b_S_timestamp$ v_b_S_s$ ?0)) true)))
+(let ((@x11425 (trans (quant-intro (rewrite $x11417) (= $x10283 $x11419)) (elim-unused (= $x11419 true)) (= $x10283 true))))
+(let ((@x11460 (monotonicity (rewrite (= (<= ?x10111 ?x10111) true)) (monotonicity @x11425 (= (and $x10283 $x10284) (and true $x10284))) (= $x10286 $x11458))))
+(let ((@x11463 (monotonicity @x11460 (monotonicity (monotonicity @x11448 $x11450) (= $x10804 $x11452)) (= $x10807 (and $x11458 $x11452)))))
+(let ((@x11469 (monotonicity @x11436 (monotonicity @x11460 @x11463 (= $x10810 (and $x11458 (and $x11458 $x11452)))) (= $x10813 (and $x11434 (and $x11458 (and $x11458 $x11452)))))))
+(let ((@x11472 (monotonicity @x11436 @x11469 (= $x10823 (and $x11434 (and $x11434 (and $x11458 (and $x11458 $x11452))))))))
+(let ((@x11483 (monotonicity (trans (monotonicity @x11436 @x11472 $x11474) (rewrite $x11477) (= $x10833 $x11476)) (= (not $x10833) $x11481))))
+(let ((@x11967 (monotonicity @x11483 (monotonicity @x11763 @x11861 (= $x11139 $x11862)) (= $x11146 (or $x11481 $x11862)))))
+(let (($x11936 (and (and $x11901 $x11904) (and $x11434 (and $x11898 (and $x11895 (and (and $x11868 $x10192) $x11434)))))))
+(let (($x11951 (and $x11260 $x10167)))
+(let (($x11958 (= (and $x11951 (and (and $x11911 $x11914) (and (and $x11432 $x11907) $x11936))) $x11957)))
+(let (($x11955 (= $x10557 (and $x11951 (and (and $x11911 $x11914) (and (and $x11432 $x11907) $x11936))))))
+(let (($x11931 (= $x10538 (and $x11434 (and $x11898 (and $x11895 (and (and $x11868 $x10192) $x11434)))))))
+(let (($x11919 (= (and (< v_b_SL_H_witness_G_0$ v_b_P_H_len$) $x10192) (and $x11868 $x10192))))
+(let ((@x11920 (monotonicity (rewrite (= (< v_b_SL_H_witness_G_0$ v_b_P_H_len$) $x11868)) $x11919)))
+(let (($x11889 (<= (+ ?x10163 (* (- 1) v_b_L_H_max_G_1$)) 0)))
+(let (($x11871 (>= (+ ?0 ?x11484) 0)))
+(let (($x11873 (not $x11871)))
+(let (($x11879 (and $x2815 $x3115 $x11873)))
+(let (($x11884 (not $x11879)))
+(let (($x11892 (or $x11884 $x11889)))
+(let (($x10186 (<= ?x10163 v_b_L_H_max_G_1$)))
+(let (($x10526 (or (not (and $x3098 (< ?0 v_b_L_H_p_G_0$))) $x10186)))
+(let ((@x11878 (monotonicity @x3124 (rewrite (= (< ?0 v_b_L_H_p_G_0$) $x11873)) (= (and $x3098 (< ?0 v_b_L_H_p_G_0$)) (and (and $x2815 $x3115) $x11873)))))
+(let ((@x11883 (trans @x11878 (rewrite (= (and (and $x2815 $x3115) $x11873) $x11879)) (= (and $x3098 (< ?0 v_b_L_H_p_G_0$)) $x11879))))
+(let ((@x11886 (monotonicity @x11883 (= (not (and $x3098 (< ?0 v_b_L_H_p_G_0$))) $x11884))))
+(let ((@x11897 (quant-intro (monotonicity @x11886 (rewrite (= $x10186 $x11889)) (= $x10526 $x11892)) (= $x10529 $x11895))))
+(let ((@x11926 (monotonicity @x11897 (monotonicity @x11920 @x11436 (= $x10194 (and (and $x11868 $x10192) $x11434))) (= $x10532 (and $x11895 (and (and $x11868 $x10192) $x11434))))))
+(let ((@x11929 (monotonicity (rewrite (= $x10183 $x11898)) @x11926 (= $x10535 (and $x11898 (and $x11895 (and (and $x11868 $x10192) $x11434)))))))
+(let ((@x11935 (monotonicity (rewrite (= (<= 0 v_b_L_H_p_G_0$) $x11901)) (rewrite (= (<= v_b_L_H_p_G_0$ b_S_max_o_u4$) $x11904)) (= $x10180 (and $x11901 $x11904)))))
+(let ((@x11941 (monotonicity (rewrite (= $x10174 $x11432)) (rewrite (= (<= v_b_SL_H_witness_G_0$ b_S_max_o_u4$) $x11907)) (= $x10176 (and $x11432 $x11907)))))
+(let ((@x11944 (monotonicity @x11941 (monotonicity @x11935 (monotonicity @x11436 @x11929 $x11931) (= $x10541 $x11936)) (= $x10544 (and (and $x11432 $x11907) $x11936)))))
+(let ((@x11947 (monotonicity (rewrite (= (<= 0 v_b_L_H_max_G_1$) $x11911)) (rewrite (= (<= v_b_L_H_max_G_1$ b_S_max_o_u1$) $x11914)) (= $x10172 (and $x11911 $x11914)))))
+(let ((@x11950 (monotonicity @x11947 @x11944 (= $x10547 (and (and $x11911 $x11914) (and (and $x11432 $x11907) $x11936))))))
+(let ((@x11956 (monotonicity (monotonicity (rewrite (= $x10074 $x11260)) (= $x10168 $x11951)) @x11950 $x11955)))
+(let ((@x11964 (monotonicity (trans @x11956 (rewrite $x11958) (= $x10557 $x11957)) (= (not $x10557) $x11962))))
+(let ((@x11975 (trans (monotonicity @x11964 @x11967 (= $x11162 (or $x11962 (or $x11481 $x11862)))) (rewrite (= (or $x11962 (or $x11481 $x11862)) $x11971)) (= $x11162 $x11971))))
+(let ((@x11978 (monotonicity (monotonicity (rewrite (= $x10074 $x11260)) (= $x10168 $x11951)) @x11975 (= $x11167 (and $x11951 $x11971)))))
+(let (($x11404 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x10163)) 0)))
+(let (($x11388 (>= ?0 1)))
+(let (($x11389 (not $x11388)))
+(let (($x11395 (and $x2815 $x3115 $x11389)))
+(let (($x11400 (not $x11395)))
+(let (($x11408 (or $x11400 $x11404)))
+(let (($x10164 (<= ?x10163 v_b_L_H_max_G_0$)))
+(let (($x10519 (or (not (and $x3098 (< ?0 1))) $x10164)))
+(let ((@x11394 (monotonicity @x3124 (rewrite (= (< ?0 1) $x11389)) (= (and $x3098 (< ?0 1)) (and (and $x2815 $x3115) $x11389)))))
+(let ((@x11399 (trans @x11394 (rewrite (= (and (and $x2815 $x3115) $x11389) $x11395)) (= (and $x3098 (< ?0 1)) $x11395))))
+(let ((@x11410 (monotonicity (monotonicity @x11399 (= (not (and $x3098 (< ?0 1))) $x11400)) (rewrite (= $x10164 $x11404)) (= $x10519 $x11408))))
+(let ((@x11416 (monotonicity (quant-intro @x11410 (= $x10522 $x11411)) (= (not $x10522) $x11414))))
+(let ((@x11986 (monotonicity @x11416 (trans @x11978 (rewrite (= (and $x11951 $x11971) $x11979)) (= $x11167 $x11979)) (= $x11174 $x11984))))
+(let ((@x11992 (monotonicity (monotonicity (rewrite (= $x10159 $x11382)) (= (not $x10159) $x11385)) (monotonicity (quant-intro @x11410 (= $x10522 $x11411)) @x11986 (= $x11179 $x11987)) (= $x11186 $x11990))))
+(let (($x11368 (and $x10145 (and $x10146 (and $x10147 (and $x10148 (and true (and true true))))))))
+(let (($x11366 (= $x10509 (and $x10146 (and $x10147 (and $x10148 (and true (and true true))))))))
+(let ((@x11355 (monotonicity (rewrite (= $x10149 true)) (rewrite (= $x10150 true)) (= $x10497 (and true true)))))
+(let ((@x11358 (monotonicity (rewrite (= $x10149 true)) @x11355 (= $x10500 (and true (and true true))))))
+(let ((@x11361 (monotonicity @x11358 (= $x10503 (and $x10148 (and true (and true true)))))))
+(let ((@x11364 (monotonicity @x11361 (= $x10506 (and $x10147 (and $x10148 (and true (and true true))))))))
+(let ((@x11373 (monotonicity (monotonicity (monotonicity @x11364 $x11366) (= $x10512 $x11368)) (= $x10515 (and $x10142 $x11368)))))
+(let ((@x11381 (monotonicity (trans @x11373 (rewrite (= (and $x10142 $x11368) $x11374)) (= $x10515 $x11374)) (= (not $x10515) $x11379))))
+(let ((@x11998 (monotonicity @x11381 (monotonicity (rewrite (= $x10159 $x11382)) @x11992 (= $x11191 $x11993)) (= $x11198 $x11996))))
+(let ((@x12006 (trans (monotonicity @x11998 (= $x11203 (and $x10142 $x11996))) (rewrite (= (and $x10142 $x11996) $x12002)) (= $x11203 $x12002))))
+(let ((@x12012 (monotonicity (monotonicity @x12006 (= $x11210 $x12007)) (= $x11215 (and $x10140 $x12007)))))
+(let ((@x12020 (monotonicity (trans @x12012 (rewrite (= (and $x10140 $x12007) $x12013)) (= $x11215 $x12013)) (= $x11222 $x12018))))
+(let (($x11306 (and $x11256 (and $x10108 (and $x10109 (and $x10112 (and $x10439 (and $x11243 $x11245))))))))
+(let (($x11327 (and (and $x11268 $x11270) (and $x11264 (and $x11260 (and $x10094 (and $x10095 (and $x10098 $x11306))))))))
+(let ((@x11344 (rewrite (= (and (and $x11284 $x11286) (and (and $x11276 $x11278) $x11327)) $x11342))))
+(let (($x11322 (= $x10476 (and $x11264 (and $x11260 (and $x10094 (and $x10095 (and $x10098 $x11306))))))))
+(let (($x11304 (= $x10451 (and $x10108 (and $x10109 (and $x10112 (and $x10439 (and $x11243 $x11245))))))))
+(let ((@x11293 (monotonicity (rewrite (= (<= 0 v_b_P_H_len$) $x11243)) (rewrite (= (<= v_b_P_H_len$ b_S_max_o_u4$) $x11245)) (= $x10119 (and $x11243 $x11245)))))
+(let ((@x11299 (monotonicity (monotonicity @x11293 (= $x10442 (and $x10439 (and $x11243 $x11245)))) (= $x10445 (and $x10112 (and $x10439 (and $x11243 $x11245)))))))
+(let ((@x11302 (monotonicity @x11299 (= $x10448 (and $x10109 (and $x10112 (and $x10439 (and $x11243 $x11245))))))))
+(let (($x11251 (>= (+ (b_S_frame_n_level$ ?0) (* (- 1) b_S_current_n_frame_n_level$)) 0)))
+(let (($x11250 (not $x11251)))
+(let ((@x11255 (rewrite (= (< (b_S_frame_n_level$ ?0) b_S_current_n_frame_n_level$) $x11250))))
+(let ((@x11308 (monotonicity (quant-intro @x11255 (= $x10104 $x11256)) (monotonicity @x11302 $x11304) (= $x10454 $x11306))))
+(let ((@x11314 (monotonicity (monotonicity @x11308 (= $x10457 (and $x10098 $x11306))) (= $x10460 (and $x10095 (and $x10098 $x11306))))))
+(let ((@x11320 (monotonicity (rewrite (= $x10074 $x11260)) (monotonicity @x11314 (= $x10470 (and $x10094 (and $x10095 (and $x10098 $x11306))))) (= $x10473 (and $x11260 (and $x10094 (and $x10095 (and $x10098 $x11306))))))))
+(let ((@x11326 (monotonicity (rewrite (= (<= 0 v_b_SL_H_witness$) $x11268)) (rewrite (= (<= v_b_SL_H_witness$ b_S_max_o_u4$) $x11270)) (= $x10071 (and $x11268 $x11270)))))
+(let ((@x11329 (monotonicity @x11326 (monotonicity (rewrite (= $x10073 $x11264)) @x11320 $x11322) (= $x10479 $x11327))))
+(let ((@x11332 (monotonicity (rewrite (= (<= 0 v_b_L_H_p$) $x11276)) (rewrite (= (<= v_b_L_H_p$ b_S_max_o_u4$) $x11278)) (= $x10067 (and $x11276 $x11278)))))
+(let ((@x11338 (monotonicity (rewrite (= (<= 0 v_b_L_H_max$) $x11284)) (rewrite (= (<= v_b_L_H_max$ b_S_max_o_u1$) $x11286)) (= $x10063 (and $x11284 $x11286)))))
+(let ((@x11341 (monotonicity @x11338 (monotonicity @x11332 @x11329 (= $x10482 (and (and $x11276 $x11278) $x11327))) (= $x10485 (and (and $x11284 $x11286) (and (and $x11276 $x11278) $x11327))))))
+(let ((@x11349 (monotonicity (trans @x11341 @x11344 (= $x10485 $x11342)) (= (not $x10485) (not $x11342)))))
+(let ((@x12026 (monotonicity @x11349 (monotonicity @x12020 (= $x11227 $x12021)) (= $x11234 (or (not $x11342) $x12021)))))
+(let ((@x10656 (monotonicity (rewrite (= (=> $x10242 true) true)) (= $x10244 (and $x10242 true)))))
+(let ((@x10663 (monotonicity (quant-intro (rewrite (= (=> $x10234 $x10235) $x10646)) (= $x10237 $x10649)) (trans @x10656 (rewrite (= (and $x10242 true) $x10242)) (= $x10244 $x10242)) (= $x10245 (=> $x10649 $x10242)))))
+(let ((@x10672 (monotonicity (quant-intro (rewrite (= (=> $x10234 $x10235) $x10646)) (= $x10237 $x10649)) (trans @x10663 (rewrite (= (=> $x10649 $x10242) $x10665)) (= $x10245 $x10665)) (= (and $x10237 $x10245) $x10670))))
+(let (($x10614 (= (and $x10218 (and $x10220 (and $x10222 true))) (and $x10218 (and $x10220 $x10222)))))
+(let ((@x10612 (monotonicity (rewrite (= (and $x10222 true) $x10222)) (= (and $x10220 (and $x10222 true)) (and $x10220 $x10222)))))
+(let ((@x10618 (monotonicity (monotonicity @x10612 $x10614) (= (and $x10216 (and $x10218 (and $x10220 (and $x10222 true)))) $x10616))))
+(let ((@x10625 (trans (monotonicity @x10618 (= $x10227 (and true $x10616))) (rewrite (= (and true $x10616) $x10616)) (= $x10227 $x10616))))
+(let ((@x10631 (monotonicity (monotonicity @x10625 (= (and $x10182 $x10227) $x10626)) (= (and $x10182 (and $x10182 $x10227)) $x10629))))
+(let ((@x10638 (trans (monotonicity @x10631 (= $x10230 (and true $x10629))) (rewrite (= (and true $x10629) $x10629)) (= $x10230 $x10629))))
+(let ((@x10644 (monotonicity (monotonicity @x10638 (= (and $x10182 $x10230) $x10639)) (= (and b_S_position_n_marker$ (and $x10182 $x10230)) $x10642))))
+(let ((@x10681 (trans (monotonicity @x10644 @x10672 (= $x10247 (=> $x10642 $x10670))) (rewrite (= (=> $x10642 $x10670) $x10677)) (= $x10247 $x10677))))
+(let (($x11117 (and $x10410 $x10182)))
+(let (($x11120 (and $x10182 $x11117)))
+(let ((@x10568 (rewrite (= (and $x10182 $x10182) $x10182))))
+(let ((@x10563 (rewrite (= $x10206 $x10182))))
+(let ((@x10570 (trans (monotonicity @x10563 (= $x10207 (and $x10182 $x10182))) @x10568 (= $x10207 $x10182))))
+(let ((@x11108 (trans (monotonicity @x10570 (= $x10411 (and $x10182 $x10182))) @x10568 (= $x10411 $x10182))))
+(let ((@x11114 (monotonicity (trans (monotonicity @x11108 (= $x10412 $x10206)) @x10563 (= $x10412 $x10182)) (= $x10413 (and $x10182 $x10182)))))
+(let ((@x11119 (monotonicity (trans @x11114 @x10568 (= $x10413 $x10182)) (= (and $x10410 $x10413) $x11117))))
+(let ((@x11125 (monotonicity (monotonicity @x11119 (= (and $x10182 (and $x10410 $x10413)) $x11120)) (= $x10416 (and true $x11120)))))
+(let ((@x11132 (monotonicity (trans @x11125 (rewrite (= (and true $x11120) $x11120)) (= $x10416 $x11120)) (monotonicity @x10681 (= $x10248 $x10682)) (= $x10417 (=> $x11120 $x10682)))))
+(let ((@x10938 (monotonicity (rewrite (= (and $x10375 false) false)) (= $x10377 (=> false true)))))
+(let ((@x10942 (trans @x10938 (rewrite (= (=> false true) true)) (= $x10377 true))))
+(let ((@x10949 (trans (monotonicity @x10942 (= $x10378 (and $x10375 true))) (rewrite (= (and $x10375 true) $x10375)) (= $x10378 $x10375))))
+(let ((@x10933 (quant-intro (rewrite (= (=> (and $x3098 (< ?0 v_b_L_H_p_G_1$)) $x10368) $x10928)) (= $x10370 $x10931))))
+(let ((@x10958 (trans (monotonicity @x10933 @x10949 (= $x10379 (=> $x10931 $x10375))) (rewrite (= (=> $x10931 $x10375) $x10954)) (= $x10379 $x10954))))
+(let ((@x10964 (monotonicity (monotonicity @x10933 @x10958 (= (and $x10370 $x10379) $x10959)) (= $x10381 (=> $x10365 $x10959)))))
+(let ((@x10973 (monotonicity (trans @x10964 (rewrite (= (=> $x10365 $x10959) $x10966)) (= $x10381 $x10966)) (= (and $x10365 $x10381) $x10971))))
+(let ((@x10920 (monotonicity (rewrite (= (and $x10360 true) $x10360)) (= (and $x10358 (and $x10360 true)) $x10918))))
+(let ((@x10903 (rewrite (= (+ v_b_L_H_p_G_0$ 1) ?x10901))))
+(let ((@x10915 (monotonicity @x10903 (= (= v_b_L_H_p_G_1$ (+ v_b_L_H_p_G_0$ 1)) $x10913))))
+(let ((@x10909 (monotonicity @x10903 (= (<= (+ v_b_L_H_p_G_0$ 1) b_S_max_o_u4$) $x10907))))
+(let ((@x10912 (monotonicity (monotonicity @x10903 (= (<= 0 (+ v_b_L_H_p_G_0$ 1)) $x10904)) @x10909 (= $x10355 $x10910))))
+(let ((@x10926 (monotonicity @x10912 (monotonicity @x10915 @x10920 (= $x10363 $x10921)) (= (and $x10355 $x10363) $x10924))))
+(let ((@x10982 (trans (monotonicity @x10926 @x10973 (= $x10383 (=> $x10924 $x10971))) (rewrite (= (=> $x10924 $x10971) $x10978)) (= $x10383 $x10978))))
+(let ((@x11021 (monotonicity (rewrite (= (and true $x10342) $x10342)) (= (and $x10392 (and true $x10342)) $x11019))))
+(let ((@x11024 (monotonicity @x11021 (= (and $x10391 (and $x10392 (and true $x10342))) $x11022))))
+(let ((@x11031 (trans (monotonicity @x11024 (= $x10395 (and true $x11022))) (rewrite (= (and true $x11022) $x11022)) (= $x10395 $x11022))))
+(let ((@x11037 (monotonicity (monotonicity @x11031 (= (and $x10182 $x10395) $x11032)) (= (and $x10182 (and $x10182 $x10395)) $x11035))))
+(let ((@x11044 (trans (monotonicity @x11037 (= $x10398 (and true $x11035))) (rewrite (= (and true $x11035) $x11035)) (= $x10398 $x11035))))
+(let ((@x11050 (monotonicity (monotonicity @x11044 (= (and $x10182 $x10398) $x11045)) (= (and $x10390 (and $x10182 $x10398)) $x11048))))
+(let ((@x11056 (monotonicity (monotonicity @x11050 (= (and $x10182 (and $x10390 (and $x10182 $x10398))) $x11051)) (= $x10402 (and true $x11051)))))
+(let ((@x11063 (monotonicity (trans @x11056 (rewrite (= (and true $x11051) $x11051)) (= $x10402 $x11051)) (monotonicity @x10912 @x10982 (= $x10384 $x10983)) (= $x10403 (=> $x11051 $x10983)))))
+(let (($x10896 (= (and $x10333 (and $x10334 (and $x10335 (and (and $x10181 $x10181) $x10346)))) $x10895)))
+(let ((@x10875 (monotonicity (rewrite (= (and true $x10342) $x10342)) (= (and $x10340 (and true $x10342)) $x10873))))
+(let ((@x10878 (monotonicity @x10875 (= (and $x10338 (and $x10340 (and true $x10342))) $x10876))))
+(let ((@x10885 (trans (monotonicity @x10878 (= $x10346 (and true $x10876))) (rewrite (= (and true $x10876) $x10876)) (= $x10346 $x10876))))
+(let ((@x10888 (monotonicity (rewrite (= (and $x10181 $x10181) $x10181)) @x10885 (= (and (and $x10181 $x10181) $x10346) $x10886))))
+(let ((@x10894 (monotonicity (monotonicity @x10888 (= (and $x10335 (and (and $x10181 $x10181) $x10346)) $x10889)) (= (and $x10334 (and $x10335 (and (and $x10181 $x10181) $x10346))) $x10892))))
+(let ((@x10988 (monotonicity (monotonicity (monotonicity @x10894 $x10896) (= $x10351 $x10898)) (monotonicity @x10912 @x10982 (= $x10384 $x10983)) (= $x10385 (=> $x10898 $x10983)))))
+(let ((@x10997 (monotonicity (trans @x10988 (rewrite (= (=> $x10898 $x10983) $x10990)) (= $x10385 $x10990)) (= (and $x10325 $x10385) $x10995))))
+(let ((@x11006 (trans (monotonicity @x10997 (= $x10387 (=> $x10323 $x10995))) (rewrite (= (=> $x10323 $x10995) $x11002)) (= $x10387 $x11002))))
+(let ((@x10861 (monotonicity (monotonicity @x10570 (= (and $x10328 $x10207) $x10856)) (= (and $x10182 (and $x10328 $x10207)) $x10859))))
+(let ((@x10868 (trans (monotonicity @x10861 (= $x10331 (and true $x10859))) (rewrite (= (and true $x10859) $x10859)) (= $x10331 $x10859))))
+(let ((@x11012 (monotonicity @x10868 (monotonicity @x11006 (= (and $x10323 $x10387) $x11007)) (= $x10389 (=> $x10859 $x11007)))))
+(let ((@x11072 (monotonicity (trans @x11012 (rewrite (= (=> $x10859 $x11007) $x11014)) (= $x10389 $x11014)) (trans @x11063 (rewrite (= (=> $x11051 $x10983) $x11065)) (= $x10403 $x11065)) (= (and $x10389 $x10403) $x11070))))
+(let ((@x11081 (trans (monotonicity @x11072 (= $x10405 (=> $x10326 $x11070))) (rewrite (= (=> $x10326 $x11070) $x11077)) (= $x10405 $x11077))))
+(let ((@x11087 (monotonicity (monotonicity @x11081 (= (and $x10325 $x10405) $x11082)) (= $x10407 (=> $x10323 $x11082)))))
+(let ((@x11095 (monotonicity (trans @x11087 (rewrite (= (=> $x10323 $x11082) $x11088)) (= $x10407 $x11088)) (= (and $x10323 $x10407) $x11093))))
+(let ((@x10848 (monotonicity (monotonicity @x10570 (= (and $x10316 $x10207) $x10843)) (= (and $x10182 (and $x10316 $x10207)) $x10846))))
+(let ((@x10855 (trans (monotonicity @x10848 (= $x10319 (and true $x10846))) (rewrite (= (and true $x10846) $x10846)) (= $x10319 $x10846))))
+(let ((@x11104 (trans (monotonicity @x10855 @x11095 (= $x10409 (=> $x10846 $x11093))) (rewrite (= (=> $x10846 $x11093) $x11100)) (= $x10409 $x11100))))
+(let ((@x11141 (monotonicity @x11104 (trans @x11132 (rewrite (= (=> $x11120 $x10682) $x11134)) (= $x10417 $x11134)) (= (and $x10409 $x10417) $x11139))))
+(let (($x10802 (= (and $x10291 (and $x10292 (and $x10293 (and $x10294 (and $x10297 $x10301))))) $x10801)))
+(let ((@x10777 (rewrite (= (= (b_S_statusmap$ v_b_S_s$) (b_S_statusmap$ v_b_S_s$)) true))))
+(let ((@x10780 (monotonicity (rewrite (= (= ?x10272 ?x10272) true)) @x10777 (= $x10300 (and true true)))))
+(let ((@x10784 (trans @x10780 (rewrite (= (and true true) true)) (= $x10300 true))))
+(let ((@x10791 (monotonicity (trans (monotonicity @x10784 (= $x10301 $x10206)) @x10563 (= $x10301 $x10182)) (= (and $x10297 $x10301) $x10789))))
+(let ((@x10797 (monotonicity (monotonicity @x10791 (= (and $x10294 (and $x10297 $x10301)) $x10792)) (= (and $x10293 (and $x10294 (and $x10297 $x10301))) $x10795))))
+(let ((@x10800 (monotonicity @x10797 (= (and $x10292 (and $x10293 (and $x10294 (and $x10297 $x10301)))) $x10798))))
+(let ((@x10809 (monotonicity (monotonicity (monotonicity @x10800 $x10802) (= $x10307 $x10804)) (= (and $x10286 $x10307) $x10807))))
+(let ((@x10759 (rewrite (= (and true $x10286) $x10286))))
+(let (($x10748 (forall ((?v0 B_S_ptr$) )(!true :pattern ( (b_S_select_o_tm$ (b_S_typemap$ v_b_S_s$) ?v0) )))
+))
+(let (($x10260 (b_S_thread_n_local$ v_b_S_s$ ?0)))
+(let (($x10275 (and (= (b_S_select_o_tm$ ?x10272 ?0) (b_S_select_o_tm$ ?x10272 ?0)) $x10260)))
+(let (($x10276 (=> $x10260 $x10275)))
+(let ((@x10714 (rewrite (= (=> $x10260 $x10260) true))))
+(let ((@x10707 (rewrite (= (and true $x10260) $x10260))))
+(let (($x10738 (= (= (b_S_select_o_tm$ ?x10272 ?0) (b_S_select_o_tm$ ?x10272 ?0)) true)))
+(let ((@x10743 (trans (monotonicity (rewrite $x10738) (= $x10275 (and true $x10260))) @x10707 (= $x10275 $x10260))))
+(let ((@x10747 (trans (monotonicity @x10743 (= $x10276 (=> $x10260 $x10260))) @x10714 (= $x10276 true))))
+(let ((@x10754 (trans (quant-intro @x10747 (= $x10278 $x10748)) (elim-unused (= $x10748 true)) (= $x10278 true))))
+(let ((@x10761 (trans (monotonicity @x10754 (= $x10287 (and true $x10286))) @x10759 (= $x10287 $x10286))))
+(let (($x10694 (forall ((?v0 B_S_ptr$) )(!true :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ v_b_S_s$) ?v0) )))
+))
+(let ((?x10256 (b_S_statusmap$ v_b_S_s$)))
+(let ((?x10257 (b_S_select_o_sm$ ?x10256 ?0)))
+(let (($x10269 (and (= ?x10257 ?x10257) $x10260)))
+(let (($x10270 (=> $x10260 $x10269)))
+(let ((@x10727 (monotonicity (rewrite (= (= ?x10257 ?x10257) true)) (= $x10269 (and true $x10260)))))
+(let ((@x10731 (monotonicity (trans @x10727 @x10707 (= $x10269 $x10260)) (= $x10270 (=> $x10260 $x10260)))))
+(let ((@x10737 (trans (quant-intro (trans @x10731 @x10714 (= $x10270 true)) (= $x10271 $x10694)) (elim-unused (= $x10694 true)) (= $x10271 true))))
+(let ((@x10765 (trans (monotonicity @x10737 @x10761 (= $x10288 (and true $x10286))) @x10759 (= $x10288 $x10286))))
+(let (($x10717 (forall ((?v0 B_S_ptr$) )(!true :pattern ( (b_S_select_o_mem$ (b_S_memory$ v_b_S_s$) ?v0) )))
+))
+(let ((?x10261 (b_S_memory$ v_b_S_s$)))
+(let ((?x10262 (b_S_select_o_mem$ ?x10261 ?0)))
+(let (($x10264 (and (= ?x10262 ?x10262) $x10260)))
+(let (($x10265 (=> $x10260 $x10264)))
+(let ((@x10705 (monotonicity (rewrite (= (= ?x10262 ?x10262) true)) (= $x10264 (and true $x10260)))))
+(let ((@x10712 (monotonicity (trans @x10705 @x10707 (= $x10264 $x10260)) (= $x10265 (=> $x10260 $x10260)))))
+(let ((@x10723 (trans (quant-intro (trans @x10712 @x10714 (= $x10265 true)) (= $x10267 $x10717)) (elim-unused (= $x10717 true)) (= $x10267 true))))
+(let ((@x10769 (trans (monotonicity @x10723 @x10765 (= $x10289 (and true $x10286))) @x10759 (= $x10289 $x10286))))
+(let (($x10253 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_owner$ v_b_S_s$ ?0))) b_S_kind_n_thread$)))
+(let ((@x10696 (quant-intro (rewrite (= (=> (not $x10253) (not $x10253)) true)) (= $x10259 $x10694))))
+(let ((@x10771 (monotonicity (trans @x10696 (elim-unused (= $x10694 true)) (= $x10259 true)) @x10769 (= $x10290 (and true $x10286)))))
+(let ((@x10812 (monotonicity (trans @x10771 @x10759 (= $x10290 $x10286)) @x10809 (= (and $x10290 (and $x10286 $x10307)) $x10810))))
+(let ((@x10818 (monotonicity (monotonicity @x10812 (= (and $x10182 (and $x10290 (and $x10286 $x10307))) $x10813)) (= $x10311 (and true $x10813)))))
+(let ((@x10825 (monotonicity (trans @x10818 (rewrite (= (and true $x10813) $x10813)) (= $x10311 $x10813)) (= (and $x10182 $x10311) $x10823))))
+(let ((@x10832 (trans (monotonicity @x10825 (= $x10313 (and true $x10823))) (rewrite (= (and true $x10823) $x10823)) (= $x10313 $x10823))))
+(let ((@x10838 (monotonicity (monotonicity @x10832 (= (and $x10182 $x10313) $x10833)) (= $x10315 (and true $x10833)))))
+(let ((@x11144 (monotonicity (trans @x10838 (rewrite (= (and true $x10833) $x10833)) (= $x10315 $x10833)) @x11141 (= $x10419 (=> $x10833 $x11139)))))
+(let ((@x10591 (rewrite (= (and false (and $x10182 (and $x10182 (and $x10205 $x10182)))) false))))
+(let (($x10585 (= (and $x10182 (and true (and $x10182 (and $x10205 $x10207)))) (and $x10182 (and $x10182 (and $x10205 $x10182))))))
+(let (($x10574 (and $x10182 (and $x10205 $x10182))))
+(let (($x10210 (and true (and $x10182 (and $x10205 $x10207)))))
+(let ((@x10576 (monotonicity (monotonicity @x10570 (= (and $x10205 $x10207) (and $x10205 $x10182))) (= (and $x10182 (and $x10205 $x10207)) $x10574))))
+(let ((@x10583 (trans (monotonicity @x10576 (= $x10210 (and true $x10574))) (rewrite (= (and true $x10574) $x10574)) (= $x10210 $x10574))))
+(let ((@x10561 (rewrite (= $x10203 false))))
+(let ((@x10589 (monotonicity @x10561 (monotonicity @x10583 $x10585) (= $x10212 (and false (and $x10182 $x10574))))))
+(let ((@x10596 (monotonicity (trans @x10589 @x10591 (= $x10212 false)) (= $x10213 (and $x10182 false)))))
+(let ((@x10600 (trans @x10596 (rewrite (= (and $x10182 false) false)) (= $x10213 false))))
+(let ((@x10607 (trans (monotonicity @x10600 (= $x10214 (and true false))) (rewrite (= (and true false) false)) (= $x10214 false))))
+(let ((@x10687 (monotonicity @x10607 (monotonicity @x10681 (= $x10248 $x10682)) (= $x10249 (=> false $x10682)))))
+(let ((@x10691 (trans @x10687 (rewrite (= (=> false $x10682) true)) (= $x10249 true))))
+(let ((@x11153 (monotonicity @x10691 (trans @x11144 (rewrite (= (=> $x10833 $x11139) $x11146)) (= $x10419 $x11146)) (= $x10420 (and true $x11146)))))
+(let (($x10545 (= (and $x10176 (and $x10180 (and $x10182 (and $x10183 (and $x10188 $x10194))))) $x10544)))
+(let ((@x10531 (quant-intro (rewrite (= (=> (and $x3098 (< ?0 v_b_L_H_p_G_0$)) $x10186) $x10526)) (= $x10188 $x10529))))
+(let ((@x10537 (monotonicity (monotonicity @x10531 (= (and $x10188 $x10194) $x10532)) (= (and $x10183 (and $x10188 $x10194)) $x10535))))
+(let ((@x10543 (monotonicity (monotonicity @x10537 (= (and $x10182 (and $x10183 (and $x10188 $x10194))) $x10538)) (= (and $x10180 (and $x10182 (and $x10183 (and $x10188 $x10194)))) $x10541))))
+(let ((@x10552 (monotonicity (monotonicity (monotonicity @x10543 $x10545) (= $x10200 $x10547)) (= $x10201 (and true $x10547)))))
+(let ((@x10559 (monotonicity (trans @x10552 (rewrite (= (and true $x10547) $x10547)) (= $x10201 $x10547)) (= (and $x10168 $x10201) $x10557))))
+(let ((@x11160 (monotonicity @x10559 (trans @x11153 (rewrite (= (and true $x11146) $x11146)) (= $x10420 $x11146)) (= $x10421 (=> $x10557 $x11146)))))
+(let ((@x11169 (monotonicity (trans @x11160 (rewrite (= (=> $x10557 $x11146) $x11162)) (= $x10421 $x11162)) (= (and $x10168 $x10421) $x11167))))
+(let ((@x10524 (quant-intro (rewrite (= (=> (and $x3098 (< ?0 1)) $x10164) $x10519)) (= $x10166 $x10522))))
+(let ((@x11178 (trans (monotonicity @x10524 @x11169 (= $x10423 (=> $x10522 $x11167))) (rewrite (= (=> $x10522 $x11167) $x11174)) (= $x10423 $x11174))))
+(let ((@x11184 (monotonicity (monotonicity @x10524 @x11178 (= (and $x10166 $x10423) $x11179)) (= $x10425 (=> $x10159 $x11179)))))
+(let ((@x11193 (monotonicity (trans @x11184 (rewrite (= (=> $x10159 $x11179) $x11186)) (= $x10425 $x11186)) (= (and $x10159 $x10425) $x11191))))
+(let ((@x10499 (monotonicity (rewrite (= (and $x10150 $x10150) $x10150)) (= (and $x10149 (and $x10150 $x10150)) $x10497))))
+(let ((@x10505 (monotonicity (monotonicity @x10499 (= (and $x10149 (and $x10149 (and $x10150 $x10150))) $x10500)) (= $x10154 $x10503))))
+(let ((@x10511 (monotonicity (monotonicity @x10505 (= (and $x10147 $x10154) $x10506)) (= (and $x10146 (and $x10147 $x10154)) $x10509))))
+(let ((@x10517 (monotonicity (monotonicity @x10511 (= (and $x10145 (and $x10146 (and $x10147 $x10154))) $x10512)) (= (and $x10142 (and $x10145 (and $x10146 (and $x10147 $x10154)))) $x10515))))
+(let ((@x11202 (trans (monotonicity @x10517 @x11193 (= $x10427 (=> $x10515 $x11191))) (rewrite (= (=> $x10515 $x11191) $x11198)) (= $x10427 $x11198))))
+(let ((@x11208 (monotonicity (monotonicity @x11202 (= (and $x10142 $x10427) $x11203)) (= $x10429 (=> $x10140 $x11203)))))
+(let ((@x11217 (monotonicity (trans @x11208 (rewrite (= (=> $x10140 $x11203) $x11210)) (= $x10429 $x11210)) (= (and $x10140 $x10429) $x11215))))
+(let ((@x11226 (trans (monotonicity @x11217 (= $x10431 (=> $x10136 $x11215))) (rewrite (= (=> $x10136 $x11215) $x11222)) (= $x10431 $x11222))))
+(let (($x10483 (= (and $x10067 (and $x10071 (and $x10073 (and $x10074 (and $x10094 $x10127))))) $x10482)))
+(let (($x10455 (= (and $x10104 (and $x10108 (and $x10109 (and $x10112 (and $x10116 $x10119))))) $x10454)))
+(let (($x10113 (b_S_in_n_writes_n_at$ v_b_H_wrTime_S_1_T_6_o_1$ ?0)))
+(let (($x10436 (not $x10113)))
+(let ((@x10444 (monotonicity (quant-intro (rewrite (= (= $x10113 false) $x10436)) (= $x10116 $x10439)) (= (and $x10116 $x10119) $x10442))))
+(let ((@x10450 (monotonicity (monotonicity @x10444 (= (and $x10112 (and $x10116 $x10119)) $x10445)) (= (and $x10109 (and $x10112 (and $x10116 $x10119))) $x10448))))
+(let ((@x10453 (monotonicity @x10450 (= (and $x10108 (and $x10109 (and $x10112 (and $x10116 $x10119)))) $x10451))))
+(let ((@x10462 (monotonicity (monotonicity (monotonicity @x10453 $x10455) (= $x10125 $x10457)) (= (and $x10095 $x10125) $x10460))))
+(let ((@x10469 (trans (monotonicity @x10462 (= $x10127 (and true $x10460))) (rewrite (= (and true $x10460) $x10460)) (= $x10127 $x10460))))
+(let ((@x10475 (monotonicity (monotonicity @x10469 (= (and $x10094 $x10127) $x10470)) (= (and $x10074 (and $x10094 $x10127)) $x10473))))
+(let ((@x10481 (monotonicity (monotonicity @x10475 (= (and $x10073 (and $x10074 (and $x10094 $x10127))) $x10476)) (= (and $x10071 (and $x10073 (and $x10074 (and $x10094 $x10127)))) $x10479))))
+(let ((@x10490 (monotonicity (monotonicity (monotonicity @x10481 $x10483) (= $x10133 $x10485)) (= $x10134 (and true $x10485)))))
+(let ((@x11232 (monotonicity (trans @x10490 (rewrite (= (and true $x10485) $x10485)) (= $x10134 $x10485)) (monotonicity @x11226 (= (and $x10136 $x10431) $x11227)) (= $x10433 (=> $x10485 $x11227)))))
+(let ((@x11241 (monotonicity (trans @x11232 (rewrite (= (=> $x10485 $x11227) $x11234)) (= $x10433 $x11234)) (= $x10434 (not $x11234)))))
+(let ((@x12031 (trans @x11241 (monotonicity @x12026 (= (not $x11234) $x12027)) (= $x10434 $x12027))))
+(let ((@x12033 (not-or-elim (mp (asserted $x10434) @x12031 $x12027) $x11342)))
+(let ((@x12044 (and-elim @x12033 $x10084)))
+(let (($x21982 (not $x10084)))
+(let (($x21995 (or $x21994 $x21982 $x21990)))
+(let ((@x22000 (mp ((_ quant-inst (b_S_ptr$ ?x10076 ?x10079) (b_S_array$ b_T_T_u1$ v_b_P_H_len$)) (or $x21994 (or $x21982 $x21990))) (rewrite (= (or $x21994 (or $x21982 $x21990)) $x21995)) $x21995)))
+(let ((@x24520 (symm (unit-resolution @x22000 @x15336 @x12044 $x21990) (= ?x21983 ?x10080))))
+(let ((@x22795 (monotonicity (trans @x24520 (symm @x24530 (= ?x10080 ?x22595)) (= ?x21983 ?x22595)) (= (b_S_set_n_in$ ?x21983 ?x22343) $x22596))))
+(let (($x22344 (b_S_set_n_in$ ?x21983 ?x22343)))
+(let (($x22362 (forall ((?v3 B_S_ptr$) )(!(let ((?x10078 (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$)))
+(let ((?x10079 (b_S_ref$ ?x10078)))
+(let ((?x10076 (b_S_array$ b_T_T_u1$ v_b_P_H_len$)))
+(let ((?x10080 (b_S_ptr$ ?x10076 ?x10079)))
+(let ((?x21014 (b_S_ref$ ?x10080)))
+(let ((?x21983 (b_S_ptr$ ?x10076 ?x21014)))
+(let ((?x22357 (b_S_read_n_version$ v_b_S_s$ ?x21983)))
+(let ((?x22358 (b_S_ver_n_domain$ ?x22357)))
+(let ((?x22234 (b_S_typ$ ?x21983)))
+(let (($x22353 (b_S_has_n_volatile_n_owns_n_set$ ?x22234)))
+(or $x22353 (not (b_S_set_n_in$ ?v3 (b_S_owns$ v_b_S_s$ ?x21983))) (b_S_set_n_in2$ ?v3 ?x22358)))))))))))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ v_b_S_s$ (b_S_ptr$ (b_S_array$ b_T_T_u1$ v_b_P_H_len$) (b_S_ref$ (b_S_ptr$ (b_S_array$ b_T_T_u1$ v_b_P_H_len$) (b_S_ref$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$))))))) )))
+))
+(let (($x22363 (not $x22362)))
+(let (($x22248 (b_S_closed$ v_b_S_s$ ?x21983)))
+(let (($x22272 (not $x22248)))
+(let (($x22352 (not $x22344)))
+(let (($x22364 (or $x22352 $x22272 $x22363)))
+(let (($x22365 (not $x22364)))
+(let (($x22318 (b_S_in_n_domain$ v_b_S_s$ ?x21983 ?x21983)))
+(let (($x22317 (b_S_in_n_domain_n_lab$ v_b_S_s$ ?x21983 ?x21983 b_l_H_public$)))
+(let (($x22326 (= $x22317 $x22318)))
+(let (($x8728 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) (?v3 B_S_label$) )(!(let (($x8719 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
+(let (($x8718 (b_S_in_n_domain_n_lab$ ?v0 ?v1 ?v2 ?v3)))
+(= $x8718 $x8719))) :pattern ( (b_S_in_n_domain_n_lab$ ?v0 ?v1 ?v2 ?v3) )))
+))
+(let (($x8719 (b_S_in_n_domain$ ?3 ?2 ?1)))
+(let (($x8718 (b_S_in_n_domain_n_lab$ ?3 ?2 ?1 ?0)))
+(let (($x8725 (= $x8718 $x8719)))
+(let (($x8723 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) (?v3 B_S_label$) )(!(let (($x8719 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
+(let (($x8718 (b_S_in_n_domain_n_lab$ ?v0 ?v1 ?v2 ?v3)))
+(= $x8718 $x8719))) :pattern ( (b_S_in_n_domain_n_lab$ ?v0 ?v1 ?v2 ?v3) )))
+))
+(let ((@x8733 (mp (asserted $x8723) (quant-intro (rewrite (= (= $x8718 $x8719) $x8725)) (= $x8723 $x8728)) $x8728)))
+(let ((@x15021 (mp~ @x8733 (nnf-pos (refl (~ $x8725 $x8725)) (~ $x8728 $x8728)) $x8728)))
+(let (($x22612 (or (not $x8728) $x22326)))
+(let ((@x22613 ((_ quant-inst v_b_S_s$ (b_S_ptr$ ?x10076 ?x21014) (b_S_ptr$ ?x10076 ?x21014) b_l_H_public$) $x22612)))
+(let (($x35 (= b_S_kind_n_primitive$ b_S_kind_n_array$)))
+(let (($x36 (not $x35)))
+(let (($x22500 (= $x36 (not (= (b_S_kind_n_of$ (b_S_typ$ ?x21983)) b_S_kind_n_primitive$)))))
+(let ((?x22234 (b_S_typ$ ?x21983)))
+(let ((?x22387 (b_S_kind_n_of$ ?x22234)))
+(let (($x22388 (= ?x22387 b_S_kind_n_primitive$)))
+(let (($x22148 (= ?x10086 b_S_kind_n_array$)))
+(let (($x21115 (b_S_is_n_arraytype$ ?x10076)))
+(let (($x22149 (= $x21115 $x22148)))
+(let (($x9869 (forall ((?v0 B_S_ctype$) )(!(let ((?x9849 (b_S_kind_n_of$ ?v0)))
+(let (($x9861 (= ?x9849 b_S_kind_n_array$)))
+(let (($x7848 (b_S_is_n_arraytype$ ?v0)))
+(= $x7848 $x9861)))) :pattern ( (b_S_is_n_arraytype$ ?v0) )))
+))
+(let (($x9861 (= ?x9849 b_S_kind_n_array$)))
+(let (($x7848 (b_S_is_n_arraytype$ ?0)))
+(let (($x9866 (= $x7848 $x9861)))
+(let (($x9864 (forall ((?v0 B_S_ctype$) )(!(let ((?x9849 (b_S_kind_n_of$ ?v0)))
+(let (($x9861 (= ?x9849 b_S_kind_n_array$)))
+(let (($x7848 (b_S_is_n_arraytype$ ?v0)))
+(= $x7848 $x9861)))) :pattern ( (b_S_is_n_arraytype$ ?v0) )))
+))
+(let ((@x9874 (mp (asserted $x9864) (quant-intro (rewrite (= (= $x7848 $x9861) $x9866)) (= $x9864 $x9869)) $x9869)))
+(let ((@x15446 (mp~ @x9874 (nnf-pos (refl (~ $x9866 $x9866)) (~ $x9869 $x9869)) $x9869)))
+(let (($x22159 (or (not $x9869) $x22149)))
+(let ((@x22160 ((_ quant-inst (b_S_array$ b_T_T_u1$ v_b_P_H_len$)) $x22159)))
+(let (($x7229 (forall ((?v0 B_S_ctype$) (?v1 Int) )(!(let ((?x6561 (b_S_array$ ?v0 ?v1)))
+(b_S_is_n_arraytype$ ?x6561)) :pattern ( (b_S_array$ ?v0 ?v1) )))
+))
+(let ((?x6561 (b_S_array$ ?1 ?0)))
+(let (($x7228 (b_S_is_n_arraytype$ ?x6561)))
+(let ((@x14576 (mp~ (asserted $x7229) (nnf-pos (refl (~ $x7228 $x7228)) (~ $x7229 $x7229)) $x7229)))
+(let (($x21122 (or (not $x7229) $x21115)))
+(let ((@x21123 ((_ quant-inst b_T_T_u1$ v_b_P_H_len$) $x21122)))
+(let ((@x22406 (unit-resolution (def-axiom (or (not $x22149) (not $x21115) $x22148)) (unit-resolution @x21123 @x14576 $x21115) (or (not $x22149) $x22148))))
+(let ((?x21180 (b_S_typ$ ?x10080)))
+(let (($x21183 (= ?x21180 ?x10076)))
+(let (($x21188 (or $x21147 $x21183)))
+(let ((@x21189 ((_ quant-inst (b_S_array$ b_T_T_u1$ v_b_P_H_len$) (b_S_ref$ ?x10078)) $x21188)))
+(let ((@x22414 (trans (monotonicity @x24520 (= ?x22234 ?x21180)) (unit-resolution @x21189 @x19846 $x21183) (= ?x22234 ?x10076))))
+(let ((@x22418 (trans (monotonicity @x22414 (= ?x22387 ?x10086)) (unit-resolution @x22406 (unit-resolution @x22160 @x15446 $x22149) $x22148) (= ?x22387 b_S_kind_n_array$))))
+(let ((@x22857 (monotonicity @x22418 (= $x22388 (= b_S_kind_n_array$ b_S_kind_n_primitive$)))))
+(let ((@x22934 (trans @x22857 (commutativity (= (= b_S_kind_n_array$ b_S_kind_n_primitive$) $x35)) (= $x22388 $x35))))
+(let (($x41 (= b_S_kind_n_thread$ b_S_kind_n_array$)))
+(let (($x42 (not $x41)))
+(let (($x39 (= b_S_kind_n_composite$ b_S_kind_n_array$)))
+(let (($x40 (not $x39)))
+(let (($x37 (= b_S_kind_n_composite$ b_S_kind_n_thread$)))
+(let (($x38 (not $x37)))
+(let (($x32 (= b_S_kind_n_primitive$ b_S_kind_n_thread$)))
+(let (($x33 (not $x32)))
+(let (($x29 (= b_S_kind_n_primitive$ b_S_kind_n_composite$)))
+(let (($x30 (not $x29)))
+(let (($x67 (and $x30 $x33 $x36 $x38 $x40 $x42)))
+(let (($x48 (and $x30 (and $x33 (and $x36 (and $x38 (and $x40 (and $x42 true))))))))
+(let (($x68 (= (and $x30 (and $x33 (and $x36 (and $x38 (and $x40 $x42))))) $x67)))
+(let (($x65 (= $x48 (and $x30 (and $x33 (and $x36 (and $x38 (and $x40 $x42))))))))
+(let (($x62 (= (and $x33 (and $x36 (and $x38 (and $x40 (and $x42 true))))) (and $x33 (and $x36 (and $x38 (and $x40 $x42)))))))
+(let (($x59 (= (and $x36 (and $x38 (and $x40 (and $x42 true)))) (and $x36 (and $x38 (and $x40 $x42))))))
+(let (($x56 (= (and $x38 (and $x40 (and $x42 true))) (and $x38 (and $x40 $x42)))))
+(let ((@x54 (monotonicity (rewrite (= (and $x42 true) $x42)) (= (and $x40 (and $x42 true)) (and $x40 $x42)))))
+(let ((@x66 (monotonicity (monotonicity (monotonicity (monotonicity @x54 $x56) $x59) $x62) $x65)))
+(let ((@x72 (mp (asserted $x48) (trans @x66 (rewrite $x68) (= $x48 $x67)) $x67)))
+(let ((@x75 (and-elim @x72 $x36)))
+(let (($x22333 (not $x22318)))
+(let (($x22336 (not $x22317)))
+(let ((@x22935 (monotonicity (symm (monotonicity @x24520 @x24520 (= $x22317 $x10136)) (= $x10136 $x22317)) (= $x11221 $x22336))))
+(let ((@x22938 (unit-resolution (def-axiom (or (not $x22326) $x22317 $x22333)) (mp (hypothesis $x11221) @x22935 $x22336) (unit-resolution @x22613 @x15021 $x22326) $x22333)))
+(let (($x22368 (b_S_is$ ?x21983 ?x22234)))
+(let ((@x22898 (mp @x12044 (symm (monotonicity @x24520 @x22414 (= $x22368 $x10084)) (= $x10084 $x22368)) $x22368)))
+(let (($x22385 (b_S_typed$ v_b_S_s$ ?x21983)))
+(let ((@x12045 (and-elim @x12033 $x10085)))
+(let ((@x22886 (mp @x12045 (symm (monotonicity @x24520 (= $x22385 $x10085)) (= $x10085 $x22385)) $x22385)))
+(let ((?x22243 (b_S_owner$ v_b_S_s$ ?x21983)))
+(let (($x22259 (= ?x22243 b_S_me$)))
+(let ((@x12043 (and-elim @x12033 $x10083)))
+(let ((@x12042 (and-elim @x12033 $x10081)))
+(let ((@x22429 (mp @x12042 (symm (monotonicity @x24520 (= $x22248 $x10081)) (= $x10081 $x22248)) $x22248)))
+(let (($x22235 (b_S_is_n_non_n_primitive$ ?x22234)))
+(let ((@x12047 (and-elim @x12033 $x10089)))
+(let ((@x22409 (mp @x12047 (symm (monotonicity @x22414 (= $x22235 $x10089)) (= $x10089 $x22235)) $x22235)))
+(let ((@x12050 (and-elim @x12033 $x10097)))
+(let (($x18905 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x8613 (b_S_in_n_domain$ ?v0 ?v1 ?v1)))
+(let ((?x2247 (b_S_typ$ ?v1)))
+(let (($x2351 (b_S_is_n_non_n_primitive$ ?x2247)))
+(let (($x9239 (not $x2351)))
+(let (($x2249 (= (b_S_kind_n_of$ ?x2247) b_S_kind_n_primitive$)))
+(let (($x2488 (b_S_typed$ ?v0 ?v1)))
+(let (($x9531 (not $x2488)))
+(let (($x2487 (b_S_is$ ?v1 ?x2247)))
+(let (($x16299 (not $x2487)))
+(let ((?x2484 (b_S_owner$ ?v0 ?v1)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x16298 (not $x2486)))
+(let (($x2471 (b_S_closed$ ?v0 ?v1)))
+(let (($x9185 (not $x2471)))
+(let (($x2687 (b_S_full_n_stop$ ?v0)))
+(let (($x16426 (not $x2687)))
+(or $x16426 $x9185 $x16298 $x16299 $x9531 $x2249 $x9239 $x8613))))))))))))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v1) )))
+))
+(let (($x8634 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x8613 (b_S_in_n_domain$ ?v0 ?v1 ?v1)))
+(let ((?x2247 (b_S_typ$ ?v1)))
+(let (($x2351 (b_S_is_n_non_n_primitive$ ?x2247)))
+(let (($x2249 (= (b_S_kind_n_of$ ?x2247) b_S_kind_n_primitive$)))
+(let (($x2294 (not $x2249)))
+(let (($x2488 (b_S_typed$ ?v0 ?v1)))
+(let (($x2487 (b_S_is$ ?v1 ?x2247)))
+(let ((?x2484 (b_S_owner$ ?v0 ?v1)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x2471 (b_S_closed$ ?v0 ?v1)))
+(let (($x2687 (b_S_full_n_stop$ ?v0)))
+(let (($x8625 (and $x2687 $x2471 $x2486 $x2487 $x2488 $x2294 $x2351)))
+(let (($x8628 (not $x8625)))
+(or $x8628 $x8613)))))))))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v1) )))
+))
+(let (($x8613 (b_S_in_n_domain$ ?1 ?0 ?0)))
+(let ((?x2247 (b_S_typ$ ?0)))
+(let (($x2351 (b_S_is_n_non_n_primitive$ ?x2247)))
+(let (($x9239 (not $x2351)))
+(let (($x2249 (= (b_S_kind_n_of$ ?x2247) b_S_kind_n_primitive$)))
+(let (($x2488 (b_S_typed$ ?1 ?0)))
+(let (($x9531 (not $x2488)))
+(let (($x2487 (b_S_is$ ?0 ?x2247)))
+(let (($x16299 (not $x2487)))
+(let ((?x2484 (b_S_owner$ ?1 ?0)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x16298 (not $x2486)))
+(let (($x2471 (b_S_closed$ ?1 ?0)))
+(let (($x9185 (not $x2471)))
+(let (($x2687 (b_S_full_n_stop$ ?1)))
+(let (($x16426 (not $x2687)))
+(let (($x18900 (or $x16426 $x9185 $x16298 $x16299 $x9531 $x2249 $x9239 $x8613)))
+(let (($x2294 (not $x2249)))
+(let (($x8625 (and $x2687 $x2471 $x2486 $x2487 $x2488 $x2294 $x2351)))
+(let (($x8628 (not $x8625)))
+(let (($x8631 (or $x8628 $x8613)))
+(let ((@x18902 (rewrite (= (or (or $x16426 $x9185 $x16298 $x16299 $x9531 $x2249 $x9239) $x8613) $x18900))))
+(let (($x18886 (or $x16426 $x9185 $x16298 $x16299 $x9531 $x2249 $x9239)))
+(let ((@x18892 (monotonicity (rewrite (= $x8625 (not $x18886))) (= $x8628 (not (not $x18886))))))
+(let ((@x18899 (monotonicity (trans @x18892 (rewrite (= (not (not $x18886)) $x18886)) (= $x8628 $x18886)) (= $x8631 (or $x18886 $x8613)))))
+(let (($x8616 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x8613 (b_S_in_n_domain$ ?v0 ?v1 ?v1)))
+(let ((?x2247 (b_S_typ$ ?v1)))
+(let (($x2351 (b_S_is_n_non_n_primitive$ ?x2247)))
+(let (($x2249 (= (b_S_kind_n_of$ ?x2247) b_S_kind_n_primitive$)))
+(let (($x2294 (not $x2249)))
+(let (($x2488 (b_S_typed$ ?v0 ?v1)))
+(let (($x2487 (b_S_is$ ?v1 ?x2247)))
+(let ((?x2484 (b_S_owner$ ?v0 ?v1)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x2471 (b_S_closed$ ?v0 ?v1)))
+(let (($x2687 (b_S_full_n_stop$ ?v0)))
+(let (($x8612 (and $x2687 (and $x2471 (and $x2486 (and $x2487 (and $x2488 (and $x2294 $x2351))))))))
+(=> $x8612 $x8613))))))))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v1) )))
+))
+(let (($x8622 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x8613 (b_S_in_n_domain$ ?v0 ?v1 ?v1)))
+(let ((?x2247 (b_S_typ$ ?v1)))
+(let (($x2351 (b_S_is_n_non_n_primitive$ ?x2247)))
+(let (($x2249 (= (b_S_kind_n_of$ ?x2247) b_S_kind_n_primitive$)))
+(let (($x2294 (not $x2249)))
+(let (($x2488 (b_S_typed$ ?v0 ?v1)))
+(let (($x2487 (b_S_is$ ?v1 ?x2247)))
+(let ((?x2484 (b_S_owner$ ?v0 ?v1)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x2471 (b_S_closed$ ?v0 ?v1)))
+(let (($x2687 (b_S_full_n_stop$ ?v0)))
+(let (($x8612 (and $x2687 (and $x2471 (and $x2486 (and $x2487 (and $x2488 (and $x2294 $x2351))))))))
+(or (not $x8612) $x8613))))))))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v1) )))
+))
+(let (($x8612 (and $x2687 (and $x2471 (and $x2486 (and $x2487 (and $x2488 (and $x2294 $x2351))))))))
+(let (($x8619 (or (not $x8612) $x8613)))
+(let ((@x8633 (monotonicity (monotonicity (rewrite (= $x8612 $x8625)) (= (not $x8612) $x8628)) (= $x8619 $x8631))))
+(let ((@x8638 (trans (quant-intro (rewrite (= (=> $x8612 $x8613) $x8619)) (= $x8616 $x8622)) (quant-intro @x8633 (= $x8622 $x8634)) (= $x8616 $x8634))))
+(let ((@x14989 (mp~ (mp (asserted $x8616) @x8638 $x8634) (nnf-pos (refl (~ $x8631 $x8631)) (~ $x8634 $x8634)) $x8634)))
+(let ((@x18908 (mp @x14989 (quant-intro (trans @x18899 @x18902 (= $x8631 $x18900)) (= $x8634 $x18905)) $x18905)))
+(let (($x22242 (not $x22235)))
+(let (($x22386 (not $x22385)))
+(let (($x22384 (not $x22368)))
+(let (($x24309 (or (not $x18905) $x19677 $x22272 (not $x22259) $x22384 $x22386 $x22388 $x22242 $x22318)))
+(let (($x24492 (= (or (not $x18905) (or $x19677 $x22272 (not $x22259) $x22384 $x22386 $x22388 $x22242 $x22318)) $x24309)))
+(let ((@x24028 ((_ quant-inst v_b_S_s$ (b_S_ptr$ ?x10076 ?x21014)) (or (not $x18905) (or $x19677 $x22272 (not $x22259) $x22384 $x22386 $x22388 $x22242 $x22318)))))
+(let ((@x24084 (mp @x24028 (rewrite $x24492) $x24309)))
+(let ((@x22410 (unit-resolution @x24084 @x18908 @x12050 @x22409 @x22429 (trans (monotonicity @x24520 (= ?x22243 ?x10082)) @x12043 $x22259) (or $x22384 $x22386 $x22388 $x22318))))
+(let ((@x22411 (unit-resolution @x22410 @x22886 @x22898 @x22938 (mp @x75 (monotonicity (symm @x22934 (= $x35 $x22388)) $x22500) (not $x22388)) false)))
+(let ((@x22434 (lemma @x22411 $x10136)))
+(let ((@x22687 (mp @x22434 (symm (monotonicity @x24520 @x24520 (= $x22317 $x10136)) (= $x10136 $x22317)) $x22317)))
+(let ((@x22688 (unit-resolution (def-axiom (or (not $x22326) $x22336 $x22318)) @x22687 (unit-resolution @x22613 @x15021 $x22326) $x22318)))
+(let (($x22366 (or $x22333 $x22365)))
+(let (($x18945 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) )(!(let (($x18929 (forall ((?v3 B_S_ptr$) )(!(let (($x8646 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?v0 ?v2)))))
+(let ((?x6628 (b_S_typ$ ?v1)))
+(let (($x8640 (b_S_has_n_volatile_n_owns_n_set$ ?x6628)))
+(or $x8640 (not (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1))) $x8646)))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1)) )))
+))
+(let (($x2554 (b_S_closed$ ?v0 ?v1)))
+(let (($x8955 (not $x2554)))
+(let (($x8428 (b_S_set_n_in$ ?v1 (b_S_domain$ ?v0 ?v2))))
+(let (($x18744 (not $x8428)))
+(let (($x18937 (not (or $x18744 $x8955 (not $x18929)))))
+(let (($x8461 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
+(let (($x8672 (not $x8461)))
+(or $x8672 $x18937))))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v2) )))
+))
+(let (($x8687 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) )(!(let (($x8660 (forall ((?v3 B_S_ptr$) )(!(let (($x8646 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?v0 ?v2)))))
+(let (($x8643 (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1))))
+(let (($x8644 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?v1))) $x8643)))
+(let (($x8656 (not $x8644)))
+(or $x8656 $x8646))))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1)) )))
+))
+(let (($x2554 (b_S_closed$ ?v0 ?v1)))
+(let (($x8428 (b_S_set_n_in$ ?v1 (b_S_domain$ ?v0 ?v2))))
+(let (($x8681 (and $x8428 $x2554 $x8660)))
+(let (($x8461 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
+(let (($x8672 (not $x8461)))
+(or $x8672 $x8681))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v2) )))
+))
+(let (($x18929 (forall ((?v3 B_S_ptr$) )(!(let (($x8646 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?2 ?0)))))
+(let ((?x6628 (b_S_typ$ ?1)))
+(let (($x8640 (b_S_has_n_volatile_n_owns_n_set$ ?x6628)))
+(or $x8640 (not (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1))) $x8646)))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1)) )))
+))
+(let (($x2554 (b_S_closed$ ?2 ?1)))
+(let (($x8955 (not $x2554)))
+(let (($x8428 (b_S_set_n_in$ ?1 (b_S_domain$ ?2 ?0))))
+(let (($x18744 (not $x8428)))
+(let (($x18937 (not (or $x18744 $x8955 (not $x18929)))))
+(let (($x8461 (b_S_in_n_domain$ ?2 ?1 ?0)))
+(let (($x8672 (not $x8461)))
+(let (($x8660 (forall ((?v3 B_S_ptr$) )(!(let (($x8646 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?2 ?0)))))
+(let (($x8643 (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1))))
+(let (($x8644 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?1))) $x8643)))
+(let (($x8656 (not $x8644)))
+(or $x8656 $x8646))))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1)) )))
+))
+(let (($x8681 (and $x8428 $x2554 $x8660)))
+(let (($x8684 (or $x8672 $x8681)))
+(let (($x8646 (b_S_set_n_in2$ ?0 (b_S_ver_n_domain$ (b_S_read_n_version$ ?3 ?1)))))
+(let ((?x6628 (b_S_typ$ ?2)))
+(let (($x8640 (b_S_has_n_volatile_n_owns_n_set$ ?x6628)))
+(let (($x18924 (or $x8640 (not (b_S_set_n_in$ ?0 (b_S_owns$ ?3 ?2))) $x8646)))
+(let (($x8643 (b_S_set_n_in$ ?0 (b_S_owns$ ?3 ?2))))
+(let (($x8644 (and (not $x8640) $x8643)))
+(let (($x8656 (not $x8644)))
+(let (($x8657 (or $x8656 $x8646)))
+(let ((@x18918 (rewrite (= (not (not (or $x8640 (not $x8643)))) (or $x8640 (not $x8643))))))
+(let ((@x18916 (monotonicity (rewrite (= $x8644 (not (or $x8640 (not $x8643))))) (= $x8656 (not (not (or $x8640 (not $x8643))))))))
+(let ((@x18923 (monotonicity (trans @x18916 @x18918 (= $x8656 (or $x8640 (not $x8643)))) (= $x8657 (or (or $x8640 (not $x8643)) $x8646)))))
+(let ((@x18928 (trans @x18923 (rewrite (= (or (or $x8640 (not $x8643)) $x8646) $x18924)) (= $x8657 $x18924))))
+(let ((@x18934 (monotonicity (quant-intro @x18928 (= $x8660 $x18929)) (= $x8681 (and $x8428 $x2554 $x18929)))))
+(let ((@x18941 (trans @x18934 (rewrite (= (and $x8428 $x2554 $x18929) $x18937)) (= $x8681 $x18937))))
+(let ((@x18947 (quant-intro (monotonicity @x18941 (= $x8684 (or $x8672 $x18937))) (= $x8687 $x18945))))
+(let ((@x15001 (monotonicity (refl (~ $x8428 $x8428)) (refl (~ $x2554 $x2554)) (nnf-pos (refl (~ $x8657 $x8657)) (~ $x8660 $x8660)) (~ $x8681 $x8681))))
+(let ((@x15005 (nnf-pos (monotonicity (refl (~ $x8672 $x8672)) @x15001 (~ $x8684 $x8684)) (~ $x8687 $x8687))))
+(let (($x8654 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) )(!(let (($x8649 (forall ((?v3 B_S_ptr$) )(!(let (($x8646 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?v0 ?v2)))))
+(let (($x8643 (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1))))
+(let (($x8644 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?v1))) $x8643)))
+(=> $x8644 $x8646)))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1)) )))
+))
+(let (($x2554 (b_S_closed$ ?v0 ?v1)))
+(let (($x8428 (b_S_set_n_in$ ?v1 (b_S_domain$ ?v0 ?v2))))
+(let (($x8461 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
+(=> $x8461 (and $x8428 (and $x2554 $x8649))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v2) )))
+))
+(let (($x8678 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) (?v2 B_S_ptr$) )(!(let (($x8660 (forall ((?v3 B_S_ptr$) )(!(let (($x8646 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?v0 ?v2)))))
+(let (($x8643 (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1))))
+(let (($x8644 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?v1))) $x8643)))
+(let (($x8656 (not $x8644)))
+(or $x8656 $x8646))))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?v0 ?v1)) )))
+))
+(let (($x2554 (b_S_closed$ ?v0 ?v1)))
+(let (($x8428 (b_S_set_n_in$ ?v1 (b_S_domain$ ?v0 ?v2))))
+(let (($x8666 (and $x8428 (and $x2554 $x8660))))
+(let (($x8461 (b_S_in_n_domain$ ?v0 ?v1 ?v2)))
+(let (($x8672 (not $x8461)))
+(or $x8672 $x8666))))))) :pattern ( (b_S_in_n_domain$ ?v0 ?v1 ?v2) )))
+))
+(let ((@x8686 (monotonicity (rewrite (= (and $x8428 (and $x2554 $x8660)) $x8681)) (= (or $x8672 (and $x8428 (and $x2554 $x8660))) $x8684))))
+(let (($x8666 (and $x8428 (and $x2554 $x8660))))
+(let (($x8673 (or $x8672 $x8666)))
+(let (($x8649 (forall ((?v3 B_S_ptr$) )(!(let (($x8646 (b_S_set_n_in2$ ?v3 (b_S_ver_n_domain$ (b_S_read_n_version$ ?2 ?0)))))
+(let (($x8643 (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1))))
+(let (($x8644 (and (not (b_S_has_n_volatile_n_owns_n_set$ (b_S_typ$ ?1))) $x8643)))
+(=> $x8644 $x8646)))) :pattern ( (b_S_set_n_in$ ?v3 (b_S_owns$ ?2 ?1)) )))
+))
+(let (($x8652 (=> $x8461 (and $x8428 (and $x2554 $x8649)))))
+(let ((@x8665 (monotonicity (quant-intro (rewrite (= (=> $x8644 $x8646) $x8657)) (= $x8649 $x8660)) (= (and $x2554 $x8649) (and $x2554 $x8660)))))
+(let ((@x8671 (monotonicity (monotonicity @x8665 (= (and $x8428 (and $x2554 $x8649)) $x8666)) (= $x8652 (=> $x8461 $x8666)))))
+(let ((@x8680 (quant-intro (trans @x8671 (rewrite (= (=> $x8461 $x8666) $x8673)) (= $x8652 $x8673)) (= $x8654 $x8678))))
+(let ((@x8692 (mp (asserted $x8654) (trans @x8680 (quant-intro @x8686 (= $x8678 $x8687)) (= $x8654 $x8687)) $x8687)))
+(let ((@x18948 (mp (mp~ @x8692 @x15005 $x8687) @x18947 $x18945)))
+(let (($x22607 (or (not $x18945) $x22333 $x22365)))
+(let ((@x22329 (mp ((_ quant-inst v_b_S_s$ (b_S_ptr$ ?x10076 ?x21014) (b_S_ptr$ ?x10076 ?x21014)) (or (not $x18945) $x22366)) (rewrite (= (or (not $x18945) $x22366) $x22607)) $x22607)))
+(let ((@x22691 (unit-resolution (def-axiom (or $x22364 $x22344)) (unit-resolution (unit-resolution @x22329 @x18948 $x22366) @x22688 $x22365) $x22344)))
+(let ((@x12041 (and-elim @x12033 $x11260)))
+(let (($x18667 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ptr$) (?v3 Int) (?v4 Int) (?v5 B_S_ctype$) )(!(let ((?x8245 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)))
+(let ((?x7097 (b_S_typemap$ ?v0)))
+(let (($x18655 (or (not (b_S_typed$ ?v0 ?x8245)) (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x7097 ?x8245)))))
+(let (($x18656 (not $x18655)))
+(let (($x5403 (>= (+ ?v4 (* (- 1) ?v3)) 0)))
+(let (($x3057 (>= ?v4 0)))
+(let (($x16520 (not $x3057)))
+(let (($x8240 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2))))
+(let (($x18630 (not $x8240)))
+(let (($x2704 (b_S_is_n_primitive$ ?v5)))
+(let (($x8855 (not $x2704)))
+(let (($x8236 (b_S_full_n_stop$ ?v0)))
+(let (($x18629 (not $x8236)))
+(or $x18629 $x8855 $x18630 $x16520 $x5403 $x18656)))))))))))))) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) ) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_owner$ ?v0 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) )))
+))
+(let (($x8307 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ptr$) (?v3 Int) (?v4 Int) (?v5 B_S_ctype$) )(!(let ((?x8245 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)))
+(let ((?x7097 (b_S_typemap$ ?v0)))
+(let (($x8291 (and (b_S_typed$ ?v0 ?x8245) (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x7097 ?x8245))))))
+(let (($x5403 (>= (+ ?v4 (* (- 1) ?v3)) 0)))
+(let (($x6757 (not $x5403)))
+(let (($x3057 (>= ?v4 0)))
+(let (($x8240 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2))))
+(let (($x2704 (b_S_is_n_primitive$ ?v5)))
+(let (($x8236 (b_S_full_n_stop$ ?v0)))
+(let (($x8270 (and $x8236 $x2704 $x8240 $x3057 $x6757)))
+(let (($x8275 (not $x8270)))
+(or $x8275 $x8291)))))))))))) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) ) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_owner$ ?v0 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) )))
+))
+(let ((?x8245 (b_S_idx$ (b_S_ptr$ ?0 ?4) ?1 ?0)))
+(let ((?x7097 (b_S_typemap$ ?5)))
+(let (($x18655 (or (not (b_S_typed$ ?5 ?x8245)) (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x7097 ?x8245)))))
+(let (($x18656 (not $x18655)))
+(let (($x5403 (>= (+ ?1 (* (- 1) ?2)) 0)))
+(let (($x3057 (>= ?1 0)))
+(let (($x16520 (not $x3057)))
+(let (($x8240 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?0 ?2) ?4) (b_S_domain$ ?5 ?3))))
+(let (($x18630 (not $x8240)))
+(let (($x8855 (not $x2704)))
+(let (($x8236 (b_S_full_n_stop$ ?5)))
+(let (($x18629 (not $x8236)))
+(let (($x18662 (or $x18629 $x8855 $x18630 $x16520 $x5403 $x18656)))
+(let (($x8291 (and (b_S_typed$ ?5 ?x8245) (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x7097 ?x8245))))))
+(let (($x6757 (not $x5403)))
+(let (($x8270 (and $x8236 $x2704 $x8240 $x3057 $x6757)))
+(let (($x8275 (not $x8270)))
+(let (($x8304 (or $x8275 $x8291)))
+(let (($x18631 (or $x18629 $x8855 $x18630 $x16520 $x5403)))
+(let ((@x18637 (monotonicity (rewrite (= $x8270 (not $x18631))) (= $x8275 (not (not $x18631))))))
+(let ((@x18661 (monotonicity (trans @x18637 (rewrite (= (not (not $x18631)) $x18631)) (= $x8275 $x18631)) (rewrite (= $x8291 $x18656)) (= $x8304 (or $x18631 $x18656)))))
+(let ((@x18669 (quant-intro (trans @x18661 (rewrite (= (or $x18631 $x18656) $x18662)) (= $x8304 $x18662)) (= $x8307 $x18667))))
+(let (($x8296 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ptr$) (?v3 Int) (?v4 Int) (?v5 B_S_ctype$) )(!(let ((?x8245 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)))
+(let ((?x7097 (b_S_typemap$ ?v0)))
+(let (($x8291 (and (b_S_typed$ ?v0 ?x8245) (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x7097 ?x8245))))))
+(let (($x3027 (<= 0 ?v4)))
+(let (($x6740 (and $x3027 (< ?v4 ?v3))))
+(let (($x8240 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2))))
+(let (($x2704 (b_S_is_n_primitive$ ?v5)))
+(let (($x8236 (b_S_full_n_stop$ ?v0)))
+(let (($x8243 (and $x8236 (and $x2704 (and $x8240 $x6740)))))
+(=> $x8243 $x8291)))))))))) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) ) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_owner$ ?v0 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) )))
+))
+(let (($x8301 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ptr$) (?v3 Int) (?v4 Int) (?v5 B_S_ctype$) )(!(let ((?x8245 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)))
+(let ((?x7097 (b_S_typemap$ ?v0)))
+(let (($x8291 (and (b_S_typed$ ?v0 ?x8245) (not (b_S_ts_n_is_n_volatile$ (b_S_select_o_tm$ ?x7097 ?x8245))))))
+(let (($x3027 (<= 0 ?v4)))
+(let (($x6740 (and $x3027 (< ?v4 ?v3))))
+(let (($x8240 (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2))))
+(let (($x2704 (b_S_is_n_primitive$ ?v5)))
+(let (($x8236 (b_S_full_n_stop$ ?v0)))
+(let (($x8243 (and $x8236 (and $x2704 (and $x8240 $x6740)))))
+(let (($x8254 (not $x8243)))
+(or $x8254 $x8291))))))))))) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) ) :pattern ( (b_S_set_n_in$ (b_S_ptr$ (b_S_array$ ?v5 ?v3) ?v1) (b_S_domain$ ?v0 ?v2)) (b_S_owner$ ?v0 (b_S_idx$ (b_S_ptr$ ?v5 ?v1) ?v4 ?v5)) (b_S_is_n_primitive$ ?v5) )))
+))
+(let (($x8243 (and $x8236 (and $x2704 (and $x8240 (and (<= 0 ?1) (< ?1 ?2)))))))
+(let (($x8254 (not $x8243)))
+(let (($x8298 (or $x8254 $x8291)))
+(let ((@x8272 (rewrite (= (and $x8236 (and $x2704 (and $x8240 (and $x3057 $x6757)))) $x8270))))
+(let (($x8265 (= (and $x2704 (and $x8240 (and (<= 0 ?1) (< ?1 ?2)))) (and $x2704 (and $x8240 (and $x3057 $x6757))))))
+(let (($x8262 (= (and $x8240 (and (<= 0 ?1) (< ?1 ?2))) (and $x8240 (and $x3057 $x6757)))))
+(let ((@x3058 (rewrite (= (<= 0 ?1) $x3057))))
+(let ((@x6762 (monotonicity @x3058 (rewrite (= (< ?1 ?2) $x6757)) (= (and (<= 0 ?1) (< ?1 ?2)) (and $x3057 $x6757)))))
+(let ((@x8269 (monotonicity (monotonicity (monotonicity @x6762 $x8262) $x8265) (= $x8243 (and $x8236 (and $x2704 (and $x8240 (and $x3057 $x6757))))))))
+(let ((@x8306 (monotonicity (monotonicity (trans @x8269 @x8272 (= $x8243 $x8270)) (= $x8254 $x8275)) (= $x8298 $x8304))))
+(let ((@x8311 (trans (quant-intro (rewrite (= (=> $x8243 $x8291) $x8298)) (= $x8296 $x8301)) (quant-intro @x8306 (= $x8301 $x8307)) (= $x8296 $x8307))))
+(let ((@x14905 (mp~ (mp (asserted $x8296) @x8311 $x8307) (nnf-pos (refl (~ $x8304 $x8304)) (~ $x8307 $x8307)) $x8307)))
+(let ((@x18670 (mp @x14905 @x18669 $x18667)))
+(let (($x22597 (not $x22596)))
+(let (($x21489 (not $x9768)))
+(let (($x22629 (not $x18667)))
+(let (($x22733 (or $x22629 $x19677 $x21489 $x22597 $x11259 $x22604)))
+(let (($x22601 (>= (+ 0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x22599 (not (>= 0 0))))
+(let (($x22605 (or $x19677 $x21489 $x22597 $x22599 $x22601 $x22604)))
+(let (($x22734 (or $x22629 $x22605)))
+(let (($x22728 (or $x19677 $x21489 $x22597 $x11259 $x22604)))
+(let ((@x22717 (rewrite (= (+ 0 (* (- 1) v_b_P_H_len$)) (* (- 1) v_b_P_H_len$)))))
+(let ((@x22724 (trans (monotonicity @x22717 (= $x22601 (>= (* (- 1) v_b_P_H_len$) 0))) (rewrite (= (>= (* (- 1) v_b_P_H_len$) 0) $x11259)) (= $x22601 $x11259))))
+(let ((@x22715 (trans (monotonicity (rewrite (= (>= 0 0) true)) (= $x22599 $x10203)) @x10561 (= $x22599 false))))
+(let ((@x22727 (monotonicity @x22715 @x22724 (= $x22605 (or $x19677 $x21489 $x22597 false $x11259 $x22604)))))
+(let ((@x22732 (trans @x22727 (rewrite (= (or $x19677 $x21489 $x22597 false $x11259 $x22604) $x22728)) (= $x22605 $x22728))))
+(let ((@x22742 (trans (monotonicity @x22732 (= $x22734 (or $x22629 $x22728))) (rewrite (= (or $x22629 $x22728) $x22733)) (= $x22734 $x22733))))
+(let ((@x22743 (mp ((_ quant-inst v_b_S_s$ v_b_P_H_arr$ (b_S_ptr$ ?x10076 ?x21014) v_b_P_H_len$ 0 b_T_T_u1$) $x22734) @x22742 $x22733)))
+(let ((@x22761 (unit-resolution @x22743 @x18670 @x9769 @x12041 @x12050 (mp @x22691 @x22795 $x22596) (hypothesis $x22603) false)))
+(let ((@x22760 (lemma @x22761 $x22604)))
+(let ((@x23294 (mp (unit-resolution (def-axiom (or $x22603 $x22641)) @x22760 $x22641) (monotonicity @x23082 (= $x22641 $x22897)) $x22897)))
+(let (($x22894 (b_S_in_n_wrapped_n_domain$ v_b_S_s$ ?x22903)))
+(let ((?x22893 (b_S_owner$ v_b_S_s$ ?x22903)))
+(let (($x22888 (= ?x22893 b_S_me$)))
+(let (($x22895 (or $x22888 $x22894)))
+(let (($x22896 (not $x22895)))
+(let ((?x22890 (b_S_typ$ ?x22903)))
+(let ((?x22891 (b_S_kind_n_of$ ?x22890)))
+(let (($x22892 (= ?x22891 b_S_kind_n_primitive$)))
+(let (($x22889 (not $x22906)))
+(let (($x22817 (not $x22807)))
+(let (($x22900 (or $x22817 $x22889 $x22892 $x22896)))
+(let (($x22952 (b_S_in_n_wrapped_n_domain$ v_b_S_s$ ?x10078)))
+(let (($x22953 (= (b_S_owner$ v_b_S_s$ ?x10078) b_S_me$)))
+(let (($x22954 (or $x22953 $x22952)))
+(let (($x22941 (not $x22954)))
+(let (($x22942 (or $x22807 $x22941)))
+(let (($x22920 (not $x22942)))
+(let (($x22901 (not $x22900)))
+(let (($x22921 (or $x22901 $x22920)))
+(let (($x22923 (not $x22921)))
+(let (($x22799 (b_S_typed$ v_b_S_s$ ?x10078)))
+(let (($x22802 (not $x22799)))
+(let (($x22939 (or $x22802 $x22923)))
+(let (($x22943 (not $x22939)))
+(let (($x22801 (b_S_thread_n_local$ v_b_S_s$ ?x10078)))
+(let (($x22944 (= $x22801 $x22943)))
+(let (($x19072 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x9039 (b_S_in_n_wrapped_n_domain$ ?v0 ?v1)))
+(let ((?x2484 (b_S_owner$ ?v0 ?v1)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x2249 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
+(let ((?x2769 (b_S_typemap$ ?v0)))
+(let ((?x9020 (b_S_select_o_tm$ ?x2769 ?v1)))
+(let ((?x9024 (b_S_ts_n_emb$ ?x9020)))
+(let (($x9035 (or (= (b_S_owner$ ?v0 ?x9024) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?v0 ?x9024))))
+(let (($x9022 (b_S_ts_n_is_n_volatile$ ?x9020)))
+(let (($x9023 (not $x9022)))
+(let (($x9027 (or $x9023 (not (b_S_closed$ ?v0 ?x9024)))))
+(let (($x2294 (not $x2249)))
+(let (($x19047 (or $x2294 (not $x9027) (= (b_S_kind_n_of$ (b_S_typ$ ?x9024)) b_S_kind_n_primitive$) (not $x9035))))
+(let (($x19056 (or (not $x19047) (not (or $x2249 (not (or $x2486 $x9039)))))))
+(let (($x2488 (b_S_typed$ ?v0 ?v1)))
+(let (($x9531 (not $x2488)))
+(let (($x19064 (not (or $x9531 (not $x19056)))))
+(let (($x9019 (b_S_thread_n_local$ ?v0 ?v1)))
+(= $x9019 $x19064))))))))))))))))))) :pattern ( (b_S_thread_n_local$ ?v0 ?v1) )))
+))
+(let (($x9066 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x9039 (b_S_in_n_wrapped_n_domain$ ?v0 ?v1)))
+(let ((?x2484 (b_S_owner$ ?v0 ?v1)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x2249 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
+(let (($x2294 (not $x2249)))
+(let (($x9041 (and $x2294 (or $x2486 $x9039))))
+(let ((?x2769 (b_S_typemap$ ?v0)))
+(let ((?x9020 (b_S_select_o_tm$ ?x2769 ?v1)))
+(let ((?x9024 (b_S_ts_n_emb$ ?x9020)))
+(let (($x9035 (or (= (b_S_owner$ ?v0 ?x9024) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?v0 ?x9024))))
+(let (($x9022 (b_S_ts_n_is_n_volatile$ ?x9020)))
+(let (($x9023 (not $x9022)))
+(let (($x9027 (or $x9023 (not (b_S_closed$ ?v0 ?x9024)))))
+(let (($x9054 (and $x2249 $x9027 (not (= (b_S_kind_n_of$ (b_S_typ$ ?x9024)) b_S_kind_n_primitive$)) $x9035)))
+(let (($x9057 (or $x9054 $x9041)))
+(let (($x2488 (b_S_typed$ ?v0 ?v1)))
+(let (($x9060 (and $x2488 $x9057)))
+(let (($x9019 (b_S_thread_n_local$ ?v0 ?v1)))
+(= $x9019 $x9060))))))))))))))))))) :pattern ( (b_S_thread_n_local$ ?v0 ?v1) )))
+))
+(let ((?x2769 (b_S_typemap$ ?1)))
+(let ((?x9020 (b_S_select_o_tm$ ?x2769 ?0)))
+(let ((?x9024 (b_S_ts_n_emb$ ?x9020)))
+(let (($x9035 (or (= (b_S_owner$ ?1 ?x9024) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?1 ?x9024))))
+(let (($x9022 (b_S_ts_n_is_n_volatile$ ?x9020)))
+(let (($x9023 (not $x9022)))
+(let (($x9027 (or $x9023 (not (b_S_closed$ ?1 ?x9024)))))
+(let (($x19047 (or $x2294 (not $x9027) (= (b_S_kind_n_of$ (b_S_typ$ ?x9024)) b_S_kind_n_primitive$) (not $x9035))))
+(let (($x19056 (or (not $x19047) (not (or $x2249 (not (or $x2486 (b_S_in_n_wrapped_n_domain$ ?1 ?0))))))))
+(let (($x19064 (not (or $x9531 (not $x19056)))))
+(let (($x9019 (b_S_thread_n_local$ ?1 ?0)))
+(let (($x9041 (and $x2294 (or $x2486 (b_S_in_n_wrapped_n_domain$ ?1 ?0)))))
+(let (($x9054 (and $x2249 $x9027 (not (= (b_S_kind_n_of$ (b_S_typ$ ?x9024)) b_S_kind_n_primitive$)) $x9035)))
+(let (($x9057 (or $x9054 $x9041)))
+(let (($x9060 (and $x2488 $x9057)))
+(let (($x9063 (= $x9019 $x9060)))
+(let (($x19054 (= $x9041 (not (or $x2249 (not (or $x2486 (b_S_in_n_wrapped_n_domain$ ?1 ?0))))))))
+(let ((@x19058 (monotonicity (rewrite (= $x9054 (not $x19047))) (rewrite $x19054) (= $x9057 $x19056))))
+(let ((@x19068 (trans (monotonicity @x19058 (= $x9060 (and $x2488 $x19056))) (rewrite (= (and $x2488 $x19056) $x19064)) (= $x9060 $x19064))))
+(let ((@x19074 (quant-intro (monotonicity @x19068 (= $x9063 (= $x9019 $x19064))) (= $x9066 $x19072))))
+(let (($x9046 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x9039 (b_S_in_n_wrapped_n_domain$ ?v0 ?v1)))
+(let ((?x2484 (b_S_owner$ ?v0 ?v1)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x2249 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
+(let (($x2294 (not $x2249)))
+(let (($x9041 (and $x2294 (or $x2486 $x9039))))
+(let ((?x2769 (b_S_typemap$ ?v0)))
+(let ((?x9020 (b_S_select_o_tm$ ?x2769 ?v1)))
+(let ((?x9024 (b_S_ts_n_emb$ ?x9020)))
+(let (($x9035 (or (= (b_S_owner$ ?v0 ?x9024) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?v0 ?x9024))))
+(let (($x9036 (and (not (= (b_S_kind_n_of$ (b_S_typ$ ?x9024)) b_S_kind_n_primitive$)) $x9035)))
+(let (($x9022 (b_S_ts_n_is_n_volatile$ ?x9020)))
+(let (($x9023 (not $x9022)))
+(let (($x9027 (or $x9023 (not (b_S_closed$ ?v0 ?x9024)))))
+(let (($x2488 (b_S_typed$ ?v0 ?v1)))
+(let (($x9043 (and $x2488 (or (and $x2249 (and $x9027 $x9036)) $x9041))))
+(let (($x9019 (b_S_thread_n_local$ ?v0 ?v1)))
+(= $x9019 $x9043)))))))))))))))))) :pattern ( (b_S_thread_n_local$ ?v0 ?v1) )))
+))
+(let (($x9051 (forall ((?v0 B_S_state$) (?v1 B_S_ptr$) )(!(let (($x9039 (b_S_in_n_wrapped_n_domain$ ?v0 ?v1)))
+(let ((?x2484 (b_S_owner$ ?v0 ?v1)))
+(let (($x2486 (= ?x2484 b_S_me$)))
+(let (($x2249 (= (b_S_kind_n_of$ (b_S_typ$ ?v1)) b_S_kind_n_primitive$)))
+(let (($x2294 (not $x2249)))
+(let (($x9041 (and $x2294 (or $x2486 $x9039))))
+(let ((?x2769 (b_S_typemap$ ?v0)))
+(let ((?x9020 (b_S_select_o_tm$ ?x2769 ?v1)))
+(let ((?x9024 (b_S_ts_n_emb$ ?x9020)))
+(let (($x9035 (or (= (b_S_owner$ ?v0 ?x9024) b_S_me$) (b_S_in_n_wrapped_n_domain$ ?v0 ?x9024))))
+(let (($x9036 (and (not (= (b_S_kind_n_of$ (b_S_typ$ ?x9024)) b_S_kind_n_primitive$)) $x9035)))
+(let (($x9022 (b_S_ts_n_is_n_volatile$ ?x9020)))
+(let (($x9023 (not $x9022)))
+(let (($x9027 (or $x9023 (not (b_S_closed$ ?v0 ?x9024)))))
+(let (($x2488 (b_S_typed$ ?v0 ?v1)))
+(let (($x9043 (and $x2488 (or (and $x2249 (and $x9027 $x9036)) $x9041))))
+(let (($x9019 (b_S_thread_n_local$ ?v0 ?v1)))
+(= $x9019 $x9043)))))))))))))))))) :pattern ( (b_S_thread_n_local$ ?v0 ?v1) )))
+))
+(let (($x9036 (and (not (= (b_S_kind_n_of$ (b_S_typ$ ?x9024)) b_S_kind_n_primitive$)) $x9035)))
+(let (($x9043 (and $x2488 (or (and $x2249 (and $x9027 $x9036)) $x9041))))
+(let (($x9048 (= $x9019 $x9043)))
+(let ((@x9059 (monotonicity (rewrite (= (and $x2249 (and $x9027 $x9036)) $x9054)) (= (or (and $x2249 (and $x9027 $x9036)) $x9041) $x9057))))
+(let ((@x9068 (quant-intro (monotonicity (monotonicity @x9059 (= $x9043 $x9060)) (= $x9048 $x9063)) (= $x9051 $x9066))))
+(let ((@x9070 (trans (quant-intro (rewrite (= (= $x9019 $x9043) $x9048)) (= $x9046 $x9051)) @x9068 (= $x9046 $x9066))))
+(let ((@x15111 (mp~ (mp (asserted $x9046) @x9070 $x9066) (nnf-pos (refl (~ $x9063 $x9063)) (~ $x9066 $x9066)) $x9066)))
+(let ((@x19075 (mp @x15111 @x19074 $x19072)))
+(let (($x23521 (or (not $x19072) $x22944)))
+(let ((@x23524 ((_ quant-inst v_b_S_s$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$)) $x23521)))
+(let (($x23055 (not $x22801)))
+(let ((@x23295 (monotonicity (symm (monotonicity @x23663 (= $x22801 $x10141)) (= $x10141 $x22801)) (= (not $x10141) $x23055))))
+(let ((@x23090 (unit-resolution (def-axiom (or (not $x22944) $x22801 $x22939)) (mp (hypothesis (not $x10141)) @x23295 $x23055) (unit-resolution @x23524 @x19075 $x22944) $x22939)))
+(let ((@x23670 (mp (unit-resolution (def-axiom (or $x22603 $x10139)) @x22760 $x10139) (symm (monotonicity @x23663 (= $x22799 $x10139)) (= $x10139 $x22799)) $x22799)))
+(let ((@x23233 (unit-resolution (def-axiom (or $x22921 $x22900)) (unit-resolution (def-axiom (or $x22943 $x22802 $x22923)) @x23670 @x23090 $x22923) $x22900)))
+(let ((?x24419 (b_S_ref$ ?x21983)))
+(let ((?x24433 (b_S_ptr$ b_T_T_u1$ ?x24419)))
+(let ((?x24410 (b_S_idx$ ?x21983 0 b_T_T_u1$)))
+(let (($x24436 (= ?x24410 ?x24433)))
+(let (($x24439 (not $x24436)))
+(let (($x24411 (b_S_extent_n_hint$ ?x24410 ?x21983)))
+(let (($x24418 (not $x24411)))
+(let (($x24442 (or $x24418 $x24439)))
+(let (($x24445 (not $x24442)))
+(let (($x24448 (or $x22568 $x24445)))
+(let (($x24424 (or $x24418 (not (= ?x24410 (b_S_ptr$ b_T_T_u1$ (+ ?x24419 (* 0 ?x10045))))))))
+(let (($x24425 (not $x24424)))
+(let (($x24440 (= (not (= ?x24410 (b_S_ptr$ b_T_T_u1$ (+ ?x24419 (* 0 ?x10045))))) $x24439)))
+(let ((@x24428 (monotonicity (rewrite (= (* 0 ?x10045) 0)) (= (+ ?x24419 (* 0 ?x10045)) (+ ?x24419 0)))))
+(let ((@x24432 (trans @x24428 (rewrite (= (+ ?x24419 0) ?x24419)) (= (+ ?x24419 (* 0 ?x10045)) ?x24419))))
+(let ((@x24435 (monotonicity @x24432 (= (b_S_ptr$ b_T_T_u1$ (+ ?x24419 (* 0 ?x10045))) ?x24433))))
+(let ((@x24438 (monotonicity @x24435 (= (= ?x24410 (b_S_ptr$ b_T_T_u1$ (+ ?x24419 (* 0 ?x10045)))) $x24436))))
+(let ((@x24447 (monotonicity (monotonicity (monotonicity @x24438 $x24440) (= $x24424 $x24442)) (= $x24425 $x24445))))
+(let ((@x24455 (trans (monotonicity @x24447 (= (or $x22568 $x24425) $x24448)) (rewrite (= $x24448 $x24448)) (= (or $x22568 $x24425) $x24448))))
+(let ((@x24133 (unit-resolution (mp ((_ quant-inst (b_S_ptr$ ?x10076 ?x21014) 0 b_T_T_u1$) (or $x22568 $x24425)) @x24455 $x24448) @x18183 (hypothesis $x24442) false)))
+(let ((@x24460 (def-axiom (or $x24442 $x24436))))
+(let ((?x24245 (b_S_idx$ ?x22595 0 b_T_T_u1$)))
+(let ((?x24246 (b_S_select_o_tm$ ?x10272 ?x24245)))
+(let ((?x24247 (b_S_ts_n_emb$ ?x24246)))
+(let (($x24248 (= ?x24247 ?x22595)))
+(let (($x24257 (b_S_typed$ v_b_S_s$ ?x24245)))
+(let (($x24258 (not $x24257)))
+(let (($x24255 (b_S_ts_n_is_n_volatile$ ?x24246)))
+(let (($x24254 (not $x24248)))
+(let (($x23737 (or $x24254 $x24255 (not (b_S_ts_n_is_n_array_n_elt$ ?x24246)) $x24258)))
+(let (($x23791 (not $x23737)))
+(let (($x24240 (b_S_typed$ v_b_S_s$ ?x22595)))
+(let ((@x24353 (mp @x12045 (symm (monotonicity @x24530 (= $x24240 $x10085)) (= $x10085 $x24240)) $x24240)))
+(let ((@x24355 (lemma (unit-resolution (hypothesis (not $x24240)) @x24353 false) $x24240)))
+(let (($x17964 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ctype$) (?v3 Int) (?v4 Int) )(!(let (($x6905 (b_S_typed$ ?v0 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
+(let ((?x6897 (b_S_typemap$ ?v0)))
+(let ((?x6899 (b_S_select_o_tm$ ?x6897 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
+(let (($x6904 (b_S_ts_n_is_n_array_n_elt$ ?x6899)))
+(let (($x17952 (or (not (= (b_S_ts_n_emb$ ?x6899) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1))) (b_S_ts_n_is_n_volatile$ ?x6899) (not $x6904) (not $x6905))))
+(let (($x17953 (not $x17952)))
+(let (($x4862 (>= (+ ?v4 (* (- 1) ?v3)) 0)))
+(let (($x2815 (>= ?v4 0)))
+(let (($x3763 (not $x2815)))
+(or (not (b_S_typed$ ?v0 (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1))) $x3763 $x4862 $x17953)))))))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) )))
+))
+(let (($x6943 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ctype$) (?v3 Int) (?v4 Int) )(!(let (($x6905 (b_S_typed$ ?v0 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
+(let ((?x6897 (b_S_typemap$ ?v0)))
+(let ((?x6899 (b_S_select_o_tm$ ?x6897 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
+(let (($x6904 (b_S_ts_n_is_n_array_n_elt$ ?x6899)))
+(let ((?x6894 (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1)))
+(let (($x6901 (= (b_S_ts_n_emb$ ?x6899) ?x6894)))
+(let (($x6937 (and $x6901 (not (b_S_ts_n_is_n_volatile$ ?x6899)) $x6904 $x6905)))
+(let (($x4862 (>= (+ ?v4 (* (- 1) ?v3)) 0)))
+(let (($x6603 (not $x4862)))
+(let (($x2815 (>= ?v4 0)))
+(let (($x6895 (b_S_typed$ ?v0 ?x6894)))
+(let (($x6929 (and $x6895 $x2815 $x6603)))
+(let (($x6934 (not $x6929)))
+(or $x6934 $x6937)))))))))))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) )))
+))
+(let (($x6905 (b_S_typed$ ?4 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?2 ?1) ?3) ?0 ?2))))
+(let ((?x6897 (b_S_typemap$ ?4)))
+(let ((?x6899 (b_S_select_o_tm$ ?x6897 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?2 ?1) ?3) ?0 ?2))))
+(let (($x6904 (b_S_ts_n_is_n_array_n_elt$ ?x6899)))
+(let (($x17952 (or (not (= (b_S_ts_n_emb$ ?x6899) (b_S_ptr$ (b_S_array$ ?2 ?1) ?3))) (b_S_ts_n_is_n_volatile$ ?x6899) (not $x6904) (not $x6905))))
+(let (($x17953 (not $x17952)))
+(let (($x4862 (>= (+ ?0 (* (- 1) ?1)) 0)))
+(let (($x3763 (not $x2815)))
+(let (($x17959 (or (not (b_S_typed$ ?4 (b_S_ptr$ (b_S_array$ ?2 ?1) ?3))) $x3763 $x4862 $x17953)))
+(let ((?x6894 (b_S_ptr$ (b_S_array$ ?2 ?1) ?3)))
+(let (($x6901 (= (b_S_ts_n_emb$ ?x6899) ?x6894)))
+(let (($x6937 (and $x6901 (not (b_S_ts_n_is_n_volatile$ ?x6899)) $x6904 $x6905)))
+(let (($x6603 (not $x4862)))
+(let (($x6895 (b_S_typed$ ?4 ?x6894)))
+(let (($x6929 (and $x6895 $x2815 $x6603)))
+(let (($x6934 (not $x6929)))
+(let (($x6940 (or $x6934 $x6937)))
+(let (($x17938 (or (not $x6895) $x3763 $x4862)))
+(let ((@x17944 (monotonicity (rewrite (= $x6929 (not $x17938))) (= $x6934 (not (not $x17938))))))
+(let ((@x17958 (monotonicity (trans @x17944 (rewrite (= (not (not $x17938)) $x17938)) (= $x6934 $x17938)) (rewrite (= $x6937 $x17953)) (= $x6940 (or $x17938 $x17953)))))
+(let ((@x17966 (quant-intro (trans @x17958 (rewrite (= (or $x17938 $x17953) $x17959)) (= $x6940 $x17959)) (= $x6943 $x17964))))
+(let (($x6917 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ctype$) (?v3 Int) (?v4 Int) )(!(let (($x6905 (b_S_typed$ ?v0 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
+(let ((?x6897 (b_S_typemap$ ?v0)))
+(let ((?x6899 (b_S_select_o_tm$ ?x6897 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
+(let (($x6904 (b_S_ts_n_is_n_array_n_elt$ ?x6899)))
+(let ((?x6894 (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1)))
+(let (($x6901 (= (b_S_ts_n_emb$ ?x6899) ?x6894)))
+(let (($x6908 (and $x6901 (and (not (b_S_ts_n_is_n_volatile$ ?x6899)) (and $x6904 $x6905)))))
+(let (($x2766 (<= 0 ?v4)))
+(let (($x6566 (and $x2766 (< ?v4 ?v3))))
+(let (($x6895 (b_S_typed$ ?v0 ?x6894)))
+(let (($x6896 (and $x6895 $x6566)))
+(=> $x6896 $x6908)))))))))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) )))
+))
+(let (($x6923 (forall ((?v0 B_S_state$) (?v1 Int) (?v2 B_S_ctype$) (?v3 Int) (?v4 Int) )(!(let (($x6905 (b_S_typed$ ?v0 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
+(let ((?x6897 (b_S_typemap$ ?v0)))
+(let ((?x6899 (b_S_select_o_tm$ ?x6897 (b_S_idx$ (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ?v4 ?v2))))
+(let (($x6904 (b_S_ts_n_is_n_array_n_elt$ ?x6899)))
+(let ((?x6894 (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1)))
+(let (($x6901 (= (b_S_ts_n_emb$ ?x6899) ?x6894)))
+(let (($x6908 (and $x6901 (and (not (b_S_ts_n_is_n_volatile$ ?x6899)) (and $x6904 $x6905)))))
+(let (($x2766 (<= 0 ?v4)))
+(let (($x6566 (and $x2766 (< ?v4 ?v3))))
+(let (($x6895 (b_S_typed$ ?v0 ?x6894)))
+(let (($x6896 (and $x6895 $x6566)))
+(or (not $x6896) $x6908)))))))))))) :pattern ( (b_S_select_o_sm$ (b_S_statusmap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) ) :pattern ( (b_S_select_o_tm$ (b_S_typemap$ ?v0) (b_S_idx$ (b_S_ptr$ ?v2 ?v1) ?v4 ?v2)) (b_S_ptr$ (b_S_array$ ?v2 ?v3) ?v1) )))
+))
+(let (($x6908 (and $x6901 (and (not (b_S_ts_n_is_n_volatile$ ?x6899)) (and $x6904 $x6905)))))
+(let (($x6920 (or (not (and $x6895 (and $x2766 (< ?0 ?1)))) $x6908)))
+(let (($x6566 (and $x2766 (< ?0 ?1))))
+(let (($x6896 (and $x6895 $x6566)))
+(let ((@x6608 (monotonicity @x2814 (rewrite (= (< ?0 ?1) $x6603)) (= $x6566 (and $x2815 $x6603)))))
+(let ((@x6933 (trans (monotonicity @x6608 (= $x6896 (and $x6895 (and $x2815 $x6603)))) (rewrite (= (and $x6895 (and $x2815 $x6603)) $x6929)) (= $x6896 $x6929))))
+(let ((@x6942 (monotonicity (monotonicity @x6933 (= (not $x6896) $x6934)) (rewrite (= $x6908 $x6937)) (= $x6920 $x6940))))
+(let ((@x6947 (trans (quant-intro (rewrite (= (=> $x6896 $x6908) $x6920)) (= $x6917 $x6923)) (quant-intro @x6942 (= $x6923 $x6943)) (= $x6917 $x6943))))
+(let ((@x14355 (mp~ (mp (asserted $x6917) @x6947 $x6943) (nnf-pos (refl (~ $x6940 $x6940)) (~ $x6943 $x6943)) $x6943)))
+(let ((@x17967 (mp @x14355 @x17966 $x17964)))
+(let (($x24241 (not $x24240)))
+(let (($x23110 (not $x17964)))
+(let (($x24183 (or $x23110 $x24241 $x11259 $x23791)))
+(let (($x23792 (or $x24241 $x22599 $x22601 $x23791)))
+(let (($x24184 (or $x23110 $x23792)))
+(let ((@x23271 (trans (monotonicity @x22715 @x22724 (= $x23792 (or $x24241 false $x11259 $x23791))) (rewrite (= (or $x24241 false $x11259 $x23791) (or $x24241 $x11259 $x23791))) (= $x23792 (or $x24241 $x11259 $x23791)))))
+(let ((@x23705 (trans (monotonicity @x23271 (= $x24184 (or $x23110 (or $x24241 $x11259 $x23791)))) (rewrite (= (or $x23110 (or $x24241 $x11259 $x23791)) $x24183)) (= $x24184 $x24183))))
+(let ((@x23755 (unit-resolution (mp ((_ quant-inst v_b_S_s$ v_b_P_H_arr$ b_T_T_u1$ v_b_P_H_len$ 0) $x24184) @x23705 $x24183) @x17967 @x12041 @x24355 (hypothesis $x23737) false)))
+(let (($x21186 (= ?x21014 ?x10079)))
+(let (($x21191 (or $x21152 $x21186)))
+(let ((@x21192 ((_ quant-inst (b_S_array$ b_T_T_u1$ v_b_P_H_len$) (b_S_ref$ ?x10078)) $x21191)))
+(let ((@x24524 (trans (monotonicity @x24520 (= ?x24419 ?x21014)) (unit-resolution @x21192 @x19840 $x21186) (= ?x24419 ?x10079))))
+(let ((@x24532 (trans @x24530 (unit-resolution @x22000 @x15336 @x12044 $x21990) (= ?x22595 ?x21983))))
+(let ((@x23632 (trans (monotonicity @x24532 (= ?x24245 ?x24410)) (hypothesis $x24436) (= ?x24245 ?x24433))))
+(let ((@x23628 (trans @x23632 (monotonicity (trans @x24524 @x24511 (= ?x24419 v_b_P_H_arr$)) (= ?x24433 ?x10078)) (= ?x24245 ?x10078))))
+(let ((@x23622 (trans (trans @x23628 (symm @x22852 (= ?x10078 ?x22553)) (= ?x24245 ?x22553)) (symm @x24124 (= ?x22553 ?x10137)) (= ?x24245 ?x10137))))
+(let ((@x23636 (symm (monotonicity (trans @x23622 @x23350 (= ?x24245 ?x22505)) (= ?x24246 ?x22655)) (= ?x22655 ?x24246))))
+(let ((@x23256 (monotonicity (monotonicity (trans @x23663 @x23350 (= ?x10078 ?x22505)) (= ?x22818 ?x22655)) (= ?x22903 (b_S_ts_n_emb$ ?x22655)))))
+(let ((@x23678 (trans @x23256 (monotonicity @x23636 (= (b_S_ts_n_emb$ ?x22655) ?x24247)) (= ?x22903 ?x24247))))
+(let ((@x23865 (trans @x23678 (unit-resolution (def-axiom (or $x23737 $x24248)) (lemma @x23755 $x23791) $x24248) (= ?x22903 ?x22595))))
+(let ((@x23912 (trans (monotonicity (trans @x23865 @x24530 (= ?x22903 ?x10080)) (= ?x22893 ?x10082)) @x12043 $x22888)))
+(let ((@x24132 (lemma (unit-resolution (hypothesis (not $x22888)) @x23912 false) (or $x24439 $x22888))))
+(let ((@x23115 (unit-resolution @x24132 (unit-resolution @x24460 (lemma @x24133 $x24445) $x24436) $x22888)))
+(let ((?x22658 (b_S_ts_n_emb$ ?x22655)))
+(let ((?x22663 (b_S_typ$ ?x22658)))
+(let ((?x22664 (b_S_kind_n_of$ ?x22663)))
+(let (($x22665 (= ?x22664 b_S_kind_n_primitive$)))
+(let ((@x23071 (monotonicity (monotonicity (symm @x23256 (= ?x22658 ?x22903)) (= ?x22663 ?x22890)) (= ?x22664 ?x22891))))
+(let (($x22946 (b_S_is_n_non_n_primitive$ ?x22663)))
+(let (($x23237 (not $x22946)))
+(let (($x23503 (or $x22665 $x23237)))
+(let (($x23504 (not $x23503)))
+(let (($x19234 (forall ((?v0 B_S_type_n_state$) )(!(let (($x9543 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?v0))) b_S_kind_n_primitive$)))
+(let (($x19230 (or $x9543 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?v0)))))))
+(not $x19230))) :pattern ( (b_S_ts_n_emb$ ?v0) )))
+))
+(let (($x9548 (forall ((?v0 B_S_type_n_state$) )(!(let (($x9543 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?v0))) b_S_kind_n_primitive$)))
+(and (not $x9543) (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?v0))))) :pattern ( (b_S_ts_n_emb$ ?v0) )))
+))
+(let (($x9543 (= (b_S_kind_n_of$ (b_S_typ$ (b_S_ts_n_emb$ ?0))) b_S_kind_n_primitive$)))
+(let (($x19230 (or $x9543 (not (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?0)))))))
+(let (($x9546 (and (not $x9543) (b_S_is_n_non_n_primitive$ (b_S_typ$ (b_S_ts_n_emb$ ?0))))))
+(let ((@x15316 (mp~ (asserted $x9548) (nnf-pos (refl (~ $x9546 $x9546)) (~ $x9548 $x9548)) $x9548)))
+(let ((@x19237 (mp @x15316 (quant-intro (rewrite (= $x9546 (not $x19230))) (= $x9548 $x19234)) $x19234)))
+(let (($x23057 (or (not $x19234) $x23504)))
+(let ((@x23058 ((_ quant-inst (b_S_select_o_tm$ ?x10272 ?x22505)) $x23057)))
+(let ((@x23584 (unit-resolution (def-axiom (or $x23503 (not $x22665))) (unit-resolution @x23058 @x19237 $x23504) (not $x22665))))
+(let ((@x23060 (lemma (unit-resolution @x23584 (trans @x23071 (hypothesis $x22892) $x22665) false) (not $x22892))))
+(let ((@x23231 (unit-resolution (def-axiom (or $x22901 $x22817 $x22889 $x22892 $x22896)) @x23060 (unit-resolution (def-axiom (or $x22895 (not $x22888))) @x23115 $x22895) (or $x22901 $x22817 $x22889))))
+(let ((@x23406 (unit-resolution @x23231 @x23233 (unit-resolution (def-axiom (or $x22906 $x22902)) @x23294 $x22906) @x23076 false)))
+(let ((@x23403 (lemma @x23406 $x10141)))
+(let (($x20092 (or $x19318 $x20089)))
+(let (($x20095 (not $x20092)))
+(let (($x20098 (or $x11385 $x20095)))
+(let (($x20101 (not $x20098)))
+(let (($x20104 (or $x11385 $x20101)))
+(let (($x20107 (not $x20104)))
+(let (($x19727 (not $x10148)))
+(let (($x19726 (not $x10147)))
+(let (($x19725 (not $x10146)))
+(let (($x19724 (not $x10145)))
+(let (($x15511 (not $x10141)))
+(let (($x15502 (not $x10138)))
+(let (($x20110 (or $x15502 $x15511 $x19724 $x19725 $x19726 $x19727 $x20107)))
+(let (($x20113 (not $x20110)))
+(let (($x20116 (or $x15502 $x15511 $x20113)))
+(let (($x20119 (not $x20116)))
+(let (($x20122 (or $x15502 $x15505 $x20119)))
+(let (($x20125 (not $x20122)))
+(let (($x20128 (or $x15502 $x15505 $x20125)))
+(let (($x20131 (not $x20128)))
+(let (($x20134 (or $x11221 $x20131)))
+(let (($x20137 (not $x20134)))
+(let (($x20140 (or $x11221 $x20137)))
+(let (($x19617 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10238 (= ?x10163 v_b_S_result_G_0$)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11800 (not $x10238))))))))))
+))
+(let (($x19602 (forall ((?v0 Int) )(let ((?x11816 (* (- 1) v_b_S_result_G_0$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11818 (<= (+ ?x10163 ?x11816) 0)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11800 $x11818))))))))))
+))
+(let (($x19626 (not (or (not $x19602) (not $x19617)))))
+(let (($x19631 (or $x19580 $x19626)))
+(let (($x19643 (not (or $x15729 $x19474 $x19501 $x19637 $x19638 $x19639 $x19640 (not $x19631)))))
+(let (($x19648 (or $x15729 $x19643)))
+(let (($x19656 (not (or $x11487 $x19474 $x19501 (not $x19648)))))
+(let (($x19408 (forall ((?v0 Int) )(let ((?x11631 (* (- 1) v_b_L_H_max_G_3$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11633 (<= (+ ?x10163 ?x11631) 0)))
+(let (($x11615 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11615 $x11633))))))))))
+))
+(let (($x19428 (not (or (not $x19408) $x19413))))
+(let (($x19433 (or $x19386 $x19428)))
+(let (($x19441 (not (or $x11612 (not $x19433)))))
+(let (($x19446 (or $x11612 $x19441)))
+(let (($x19458 (not (or $x15611 $x15614 $x19452 $x19453 $x19454 $x19455 (not $x19446)))))
+(let (($x19463 (or $x15611 $x15614 $x19458)))
+(let (($x19475 (not $x19463)))
+(let (($x19515 (not (or $x11515 $x19501 $x19512 $x19513 $x19474 $x19455 $x19475))))
+(let (($x19477 (not (or $x15590 $x15599 $x19469 $x19470 $x19471 $x19472 $x19473 $x19474 $x19455 $x19475))))
+(let (($x19482 (or $x15590 $x15599 $x19477)))
+(let (($x19490 (not (or $x15590 $x15593 (not $x19482)))))
+(let (($x19495 (or $x15590 $x15593 $x19490)))
+(let (($x19504 (not (or $x11516 $x19474 $x19501 (not $x19495)))))
+(let (($x19520 (or $x19504 $x19515)))
+(let (($x19528 (not (or $x15590 $x15599 $x19474 $x19501 (not $x19520)))))
+(let (($x19533 (or $x15590 $x15599 $x19528)))
+(let (($x19541 (not (or $x15590 $x15593 (not $x19533)))))
+(let (($x19546 (or $x15590 $x15593 $x19541)))
+(let (($x19554 (not (or $x11486 $x19474 $x19501 (not $x19546)))))
+(let (($x19661 (or $x19554 $x19656)))
+(let (($x19362 (forall ((?v0 Int) )(let ((?x11887 (* (- 1) v_b_L_H_max_G_1$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11889 (<= (+ ?x10163 ?x11887) 0)))
+(let (($x11871 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11871 $x11889))))))))))
+))
+(let (($x19685 (or $x11259 $x15548 $x19667 $x19668 $x19669 $x19670 $x19671 $x19672 (not $x19362) $x11867 $x19674 $x19675 $x19676 $x19677 $x19678 $x19679 $x19680 $x19681 $x19682 $x19683 $x19474 $x19501 (not $x19661))))
+(let (($x19686 (not $x19685)))
+(let (($x19691 (or $x11259 $x15548 $x19686)))
+(let (($x19340 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11404 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x10163)) 0)))
+(let (($x11388 (>= ?v0 1)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x3763 (not $x2815)))
+(or $x3763 $x16553 $x11388 $x11404)))))))))
+))
+(let (($x19700 (not (or (not $x19340) (not $x19691)))))
+(let (($x19705 (or $x19318 $x19700)))
+(let (($x19713 (not (or $x11385 (not $x19705)))))
+(let (($x19718 (or $x11385 $x19713)))
+(let (($x19730 (not (or $x15502 $x15511 $x19724 $x19725 $x19726 $x19727 (not $x19718)))))
+(let (($x19735 (or $x15502 $x15511 $x19730)))
+(let (($x19743 (not (or $x15502 $x15505 (not $x19735)))))
+(let (($x19748 (or $x15502 $x15505 $x19743)))
+(let (($x19756 (not (or $x11221 (not $x19748)))))
+(let (($x19761 (or $x11221 $x19756)))
+(let (($x12168 (<= ?0 4294967295)))
+(let (($x16553 (not $x12168)))
+(let (($x19606 (or $x3763 $x16553 $x11800 (not $x10238))))
+(let ((@x20037 (monotonicity (quant-intro (refl (= $x19606 $x19606)) (= $x19617 $x20030)) (= (not $x19617) $x20035))))
+(let ((@x20026 (quant-intro (refl (= (or $x3763 $x16553 $x11800 $x11818) (or $x3763 $x16553 $x11800 $x11818))) (= $x19602 $x20022))))
+(let ((@x20040 (monotonicity (monotonicity @x20026 (= (not $x19602) $x20027)) @x20037 (= (or (not $x19602) (not $x19617)) $x20038))))
+(let ((@x20049 (monotonicity (monotonicity (monotonicity @x20040 (= $x19626 $x20041)) (= $x19631 $x20044)) (= (not $x19631) $x20047))))
+(let ((@x20052 (monotonicity @x20049 (= (or $x15729 $x19474 $x19501 $x19637 $x19638 $x19639 $x19640 (not $x19631)) $x20050))))
+(let ((@x20061 (monotonicity (monotonicity (monotonicity @x20052 (= $x19643 $x20053)) (= $x19648 $x20056)) (= (not $x19648) $x20059))))
+(let ((@x20067 (monotonicity (monotonicity @x20061 (= (or $x11487 $x19474 $x19501 (not $x19648)) $x20062)) (= $x19656 $x20065))))
+(let ((@x19910 (quant-intro (refl (= (or $x3763 $x16553 $x11615 $x11633) (or $x3763 $x16553 $x11615 $x11633))) (= $x19408 $x19906))))
+(let ((@x19916 (monotonicity (monotonicity @x19910 (= (not $x19408) $x19911)) (= (or (not $x19408) $x19413) $x19914))))
+(let ((@x19925 (monotonicity (monotonicity (monotonicity @x19916 (= $x19428 $x19917)) (= $x19433 $x19920)) (= (not $x19433) $x19923))))
+(let ((@x19931 (monotonicity (monotonicity @x19925 (= (or $x11612 (not $x19433)) $x19926)) (= $x19441 $x19929))))
+(let ((@x19937 (monotonicity (monotonicity @x19931 (= $x19446 $x19932)) (= (not $x19446) $x19935))))
+(let ((@x19940 (monotonicity @x19937 (= (or $x15611 $x15614 $x19452 $x19453 $x19454 $x19455 (not $x19446)) $x19938))))
+(let ((@x19949 (monotonicity (monotonicity (monotonicity @x19940 (= $x19458 $x19941)) (= $x19463 $x19944)) (= $x19475 $x19947))))
+(let ((@x19982 (monotonicity @x19949 (= (or $x11515 $x19501 $x19512 $x19513 $x19474 $x19455 $x19475) $x19980))))
+(let ((@x19952 (monotonicity @x19949 (= (or $x15590 $x15599 $x19469 $x19470 $x19471 $x19472 $x19473 $x19474 $x19455 $x19475) $x19950))))
+(let ((@x19961 (monotonicity (monotonicity (monotonicity @x19952 (= $x19477 $x19953)) (= $x19482 $x19956)) (= (not $x19482) $x19959))))
+(let ((@x19967 (monotonicity (monotonicity @x19961 (= (or $x15590 $x15593 (not $x19482)) $x19962)) (= $x19490 $x19965))))
+(let ((@x19973 (monotonicity (monotonicity @x19967 (= $x19495 $x19968)) (= (not $x19495) $x19971))))
+(let ((@x19979 (monotonicity (monotonicity @x19973 (= (or $x11516 $x19474 $x19501 (not $x19495)) $x19974)) (= $x19504 $x19977))))
+(let ((@x19988 (monotonicity @x19979 (monotonicity @x19982 (= $x19515 $x19983)) (= $x19520 $x19986))))
+(let ((@x19994 (monotonicity (monotonicity @x19988 (= (not $x19520) $x19989)) (= (or $x15590 $x15599 $x19474 $x19501 (not $x19520)) $x19992))))
+(let ((@x20003 (monotonicity (monotonicity (monotonicity @x19994 (= $x19528 $x19995)) (= $x19533 $x19998)) (= (not $x19533) $x20001))))
+(let ((@x20009 (monotonicity (monotonicity @x20003 (= (or $x15590 $x15593 (not $x19533)) $x20004)) (= $x19541 $x20007))))
+(let ((@x20015 (monotonicity (monotonicity @x20009 (= $x19546 $x20010)) (= (not $x19546) $x20013))))
+(let ((@x20021 (monotonicity (monotonicity @x20015 (= (or $x11486 $x19474 $x19501 (not $x19546)) $x20016)) (= $x19554 $x20019))))
+(let ((@x20073 (monotonicity (monotonicity @x20021 @x20067 (= $x19661 $x20068)) (= (not $x19661) $x20071))))
+(let ((@x19902 (quant-intro (refl (= (or $x3763 $x16553 $x11871 $x11889) (or $x3763 $x16553 $x11871 $x11889))) (= $x19362 $x19898))))
+(let ((@x20076 (monotonicity (monotonicity @x19902 (= (not $x19362) $x19903)) @x20073 (= $x19685 $x20074))))
+(let ((@x20085 (monotonicity (monotonicity (monotonicity @x20076 (= $x19686 $x20077)) (= $x19691 $x20080)) (= (not $x19691) $x20083))))
+(let ((@x19894 (quant-intro (refl (= (or $x3763 $x16553 $x11388 $x11404) (or $x3763 $x16553 $x11388 $x11404))) (= $x19340 $x19890))))
+(let ((@x20088 (monotonicity (monotonicity @x19894 (= (not $x19340) $x19895)) @x20085 (= (or (not $x19340) (not $x19691)) $x20086))))
+(let ((@x20097 (monotonicity (monotonicity (monotonicity @x20088 (= $x19700 $x20089)) (= $x19705 $x20092)) (= (not $x19705) $x20095))))
+(let ((@x20103 (monotonicity (monotonicity @x20097 (= (or $x11385 (not $x19705)) $x20098)) (= $x19713 $x20101))))
+(let ((@x20109 (monotonicity (monotonicity @x20103 (= $x19718 $x20104)) (= (not $x19718) $x20107))))
+(let ((@x20112 (monotonicity @x20109 (= (or $x15502 $x15511 $x19724 $x19725 $x19726 $x19727 (not $x19718)) $x20110))))
+(let ((@x20121 (monotonicity (monotonicity (monotonicity @x20112 (= $x19730 $x20113)) (= $x19735 $x20116)) (= (not $x19735) $x20119))))
+(let ((@x20127 (monotonicity (monotonicity @x20121 (= (or $x15502 $x15505 (not $x19735)) $x20122)) (= $x19743 $x20125))))
+(let ((@x20133 (monotonicity (monotonicity @x20127 (= $x19748 $x20128)) (= (not $x19748) $x20131))))
+(let ((@x20139 (monotonicity (monotonicity @x20133 (= (or $x11221 (not $x19748)) $x20134)) (= $x19756 $x20137))))
+(let (($x15761 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10238 (= ?x10163 v_b_S_result_G_0$)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x11802 (not $x11800)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x13448 (and $x2815 $x12168 $x11802 $x10238)))
+(not $x13448)))))))))
+))
+(let (($x13442 (forall ((?v0 Int) )(let ((?x11816 (* (- 1) v_b_S_result_G_0$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11818 (<= (+ ?x10163 ?x11816) 0)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x11802 (not $x11800)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x13433 (and $x2815 $x12168 $x11802)))
+(let (($x13436 (not $x13433)))
+(or $x13436 $x11818)))))))))))
+))
+(let (($x15765 (and $x13442 $x15761)))
+(let (($x16014 (not $x16009)))
+(let (($x16017 (and $x15736 $x15737 $x16014)))
+(let (($x16020 (not $x16017)))
+(let (($x16036 (or $x16020 $x16031)))
+(let (($x16039 (not $x16036)))
+(let (($x16042 (or $x16039 $x15765)))
+(let (($x16048 (and b_S_position_n_marker$ $x11429 $x11432 $x10216 $x10218 $x10220 $x10222 $x16042)))
+(let (($x16053 (or $x15729 $x16048)))
+(let (($x16059 (and $x11486 $x11429 $x11432 $x16053)))
+(let (($x15648 (not $x11651)))
+(let (($x13373 (forall ((?v0 Int) )(let ((?x11631 (* (- 1) v_b_L_H_max_G_3$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11633 (<= (+ ?x10163 ?x11631) 0)))
+(let (($x11615 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_1$)) 0)))
+(let (($x11617 (not $x11615)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x13364 (and $x2815 $x12168 $x11617)))
+(let (($x13367 (not $x13364)))
+(or $x13367 $x11633)))))))))))
+))
+(let (($x15651 (and $x13373 $x15648)))
+(let (($x15876 (not $x15871)))
+(let (($x15879 (and $x15626 $x15627 $x15876)))
+(let (($x15882 (not $x15879)))
+(let (($x15898 (or $x15882 $x15893)))
+(let (($x15901 (not $x15898)))
+(let (($x15904 (or $x15901 $x15651)))
+(let (($x15907 (and $x11608 $x15904)))
+(let (($x15910 (or $x11612 $x15907)))
+(let (($x15916 (and $x11570 $x13353 $x11580 $x10358 $x11578 $x11536 $x15910)))
+(let (($x15921 (or $x15611 $x15614 $x15916)))
+(let (($x15959 (and $x11516 $x11432 $x10391 $x10392 $x11429 $x11536 $x15921)))
+(let (($x15927 (and $x10321 $x10324 $x10333 $x10334 $x10335 $x10338 $x10340 $x11429 $x11536 $x15921)))
+(let (($x15932 (or $x15590 $x15599 $x15927)))
+(let (($x15938 (and $x10321 $x10322 $x15932)))
+(let (($x15943 (or $x15590 $x15593 $x15938)))
+(let (($x15949 (and $x11515 $x11429 $x11432 $x15943)))
+(let (($x15964 (or $x15949 $x15959)))
+(let (($x15970 (and $x10321 $x10324 $x11429 $x11432 $x15964)))
+(let (($x15975 (or $x15590 $x15599 $x15970)))
+(let (($x15981 (and $x10321 $x10322 $x15975)))
+(let (($x15986 (or $x15590 $x15593 $x15981)))
+(let (($x15992 (and $x11487 $x11429 $x11432 $x15986)))
+(let (($x16064 (or $x15992 $x16059)))
+(let (($x13340 (forall ((?v0 Int) )(let ((?x11887 (* (- 1) v_b_L_H_max_G_1$)))
+(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11889 (<= (+ ?x10163 ?x11887) 0)))
+(let (($x11871 (>= (+ ?v0 (* (- 1) v_b_L_H_p_G_0$)) 0)))
+(let (($x11873 (not $x11871)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x13331 (and $x2815 $x12168 $x11873)))
+(let (($x13334 (not $x13331)))
+(or $x13334 $x11889)))))))))))
+))
+(let (($x16070 (and $x11260 $x10167 $x11911 $x13304 $x13315 $x11901 $x13326 $x11898 $x13340 $x11868 $x10192 $x10284 $x10204 $x10097 $x10291 $x10292 $x10293 $x10294 $x10295 $x10296 $x11429 $x11432 $x16064)))
+(let (($x16075 (or $x11259 $x15548 $x16070)))
+(let (($x13292 (forall ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x11404 (>= (+ v_b_L_H_max_G_0$ (* (- 1) ?x10163)) 0)))
+(let (($x11388 (>= ?v0 1)))
+(let (($x11389 (not $x11388)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x2815 (>= ?v0 0)))
+(let (($x13283 (and $x2815 $x12168 $x11389)))
+(let (($x13286 (not $x13283)))
+(or $x13286 $x11404))))))))))
+))
+(let (($x16078 (and $x13292 $x16075)))
+(let (($x15528 (not (and $x15523 $x15524 (not $x15525)))))
+(let (($x15534 (or $x15528 $x15533)))
+(let (($x15535 (not $x15534)))
+(let (($x16081 (or $x15535 $x16078)))
+(let (($x16084 (and $x11382 $x16081)))
+(let (($x16087 (or $x11385 $x16084)))
+(let (($x16093 (and $x10138 $x10141 $x10145 $x10146 $x10147 $x10148 $x16087)))
+(let (($x16098 (or $x15502 $x15511 $x16093)))
+(let (($x16104 (and $x10138 $x10139 $x16098)))
+(let (($x16109 (or $x15502 $x15505 $x16104)))
+(let (($x16112 (and $x10136 $x16109)))
+(let (($x16115 (or $x11221 $x16112)))
+(let (($x19664 (and $x11260 $x10167 $x11911 $x13304 $x13315 $x11901 $x13326 $x11898 $x19362 $x11868 $x10192 $x10284 $x10204 $x10097 $x10291 $x10292 $x10293 $x10294 $x10295 $x10296 $x11429 $x11432 $x19661)))
+(let (($x19644 (= (and b_S_position_n_marker$ $x11429 $x11432 $x10216 $x10218 $x10220 $x10222 $x19631) $x19643)))
+(let (($x19635 (= $x16048 (and b_S_position_n_marker$ $x11429 $x11432 $x10216 $x10218 $x10220 $x10222 $x19631))))
+(let ((@x19612 (monotonicity (rewrite (= (and $x2815 $x12168 $x11802 $x10238) (not $x19606))) (= (not (and $x2815 $x12168 $x11802 $x10238)) (not (not $x19606))))))
+(let ((@x19616 (trans @x19612 (rewrite (= (not (not $x19606)) $x19606)) (= (not (and $x2815 $x12168 $x11802 $x10238)) $x19606))))
+(let ((@x19599 (rewrite (= (or (or $x3763 $x16553 $x11800) $x11818) (or $x3763 $x16553 $x11800 $x11818)))))
+(let (($x13433 (and $x2815 $x12168 $x11802)))
+(let (($x13436 (not $x13433)))
+(let (($x13439 (or $x13436 $x11818)))
+(let ((@x19589 (monotonicity (rewrite (= $x13433 (not (or $x3763 $x16553 $x11800)))) (= $x13436 (not (not (or $x3763 $x16553 $x11800)))))))
+(let ((@x19593 (trans @x19589 (rewrite (= (not (not (or $x3763 $x16553 $x11800))) (or $x3763 $x16553 $x11800))) (= $x13436 (or $x3763 $x16553 $x11800)))))
+(let ((@x19601 (trans (monotonicity @x19593 (= $x13439 (or (or $x3763 $x16553 $x11800) $x11818))) @x19599 (= $x13439 (or $x3763 $x16553 $x11800 $x11818)))))
+(let ((@x19622 (monotonicity (quant-intro @x19601 (= $x13442 $x19602)) (quant-intro @x19616 (= $x15761 $x19617)) (= $x15765 (and $x19602 $x19617)))))
+(let ((@x19567 (monotonicity (rewrite (= $x16017 (not (or $x19559 $x19560 $x16009)))) (= $x16020 (not (not (or $x19559 $x19560 $x16009)))))))
+(let ((@x19571 (trans @x19567 (rewrite (= (not (not (or $x19559 $x19560 $x16009))) (or $x19559 $x19560 $x16009))) (= $x16020 (or $x19559 $x19560 $x16009)))))
+(let ((@x19579 (trans (monotonicity @x19571 (= $x16036 (or (or $x19559 $x19560 $x16009) $x16031))) (rewrite (= (or (or $x19559 $x19560 $x16009) $x16031) $x19575)) (= $x16036 $x19575))))
+(let ((@x19633 (monotonicity (monotonicity @x19579 (= $x16039 $x19580)) (trans @x19622 (rewrite (= (and $x19602 $x19617) $x19626)) (= $x15765 $x19626)) (= $x16042 $x19631))))
+(let ((@x19650 (monotonicity (trans (monotonicity @x19633 $x19635) (rewrite $x19644) (= $x16048 $x19643)) (= $x16053 $x19648))))
+(let ((@x19660 (trans (monotonicity @x19650 (= $x16059 (and $x11486 $x11429 $x11432 $x19648))) (rewrite (= (and $x11486 $x11429 $x11432 $x19648) $x19656)) (= $x16059 $x19656))))
+(let ((@x19422 (trans (monotonicity (rewrite (= $x11651 $x19413)) (= $x15648 (not $x19413))) (rewrite (= (not $x19413) $x19412)) (= $x15648 $x19412))))
+(let ((@x19405 (rewrite (= (or (or $x3763 $x16553 $x11615) $x11633) (or $x3763 $x16553 $x11615 $x11633)))))
+(let (($x13364 (and $x2815 $x12168 $x11617)))
+(let (($x13367 (not $x13364)))
+(let (($x13370 (or $x13367 $x11633)))
+(let ((@x19395 (monotonicity (rewrite (= $x13364 (not (or $x3763 $x16553 $x11615)))) (= $x13367 (not (not (or $x3763 $x16553 $x11615)))))))
+(let ((@x19399 (trans @x19395 (rewrite (= (not (not (or $x3763 $x16553 $x11615))) (or $x3763 $x16553 $x11615))) (= $x13367 (or $x3763 $x16553 $x11615)))))
+(let ((@x19407 (trans (monotonicity @x19399 (= $x13370 (or (or $x3763 $x16553 $x11615) $x11633))) @x19405 (= $x13370 (or $x3763 $x16553 $x11615 $x11633)))))
+(let ((@x19425 (monotonicity (quant-intro @x19407 (= $x13373 $x19408)) @x19422 (= $x15651 (and $x19408 $x19412)))))
+(let ((@x19373 (monotonicity (rewrite (= $x15879 (not (or $x19365 $x19366 $x15871)))) (= $x15882 (not (not (or $x19365 $x19366 $x15871)))))))
+(let ((@x19377 (trans @x19373 (rewrite (= (not (not (or $x19365 $x19366 $x15871))) (or $x19365 $x19366 $x15871))) (= $x15882 (or $x19365 $x19366 $x15871)))))
+(let ((@x19385 (trans (monotonicity @x19377 (= $x15898 (or (or $x19365 $x19366 $x15871) $x15893))) (rewrite (= (or (or $x19365 $x19366 $x15871) $x15893) $x19381)) (= $x15898 $x19381))))
+(let ((@x19435 (monotonicity (monotonicity @x19385 (= $x15901 $x19386)) (trans @x19425 (rewrite (= (and $x19408 $x19412) $x19428)) (= $x15651 $x19428)) (= $x15904 $x19433))))
+(let ((@x19445 (trans (monotonicity @x19435 (= $x15907 (and $x11608 $x19433))) (rewrite (= (and $x11608 $x19433) $x19441)) (= $x15907 $x19441))))
+(let ((@x19451 (monotonicity (monotonicity @x19445 (= $x15910 $x19446)) (= $x15916 (and $x11570 $x13353 $x11580 $x10358 $x11578 $x11536 $x19446)))))
+(let ((@x19462 (trans @x19451 (rewrite (= (and $x11570 $x13353 $x11580 $x10358 $x11578 $x11536 $x19446) $x19458)) (= $x15916 $x19458))))
+(let ((@x19511 (monotonicity (monotonicity @x19462 (= $x15921 $x19463)) (= $x15959 (and $x11516 $x11432 $x10391 $x10392 $x11429 $x11536 $x19463)))))
+(let ((@x19519 (trans @x19511 (rewrite (= (and $x11516 $x11432 $x10391 $x10392 $x11429 $x11536 $x19463) $x19515)) (= $x15959 $x19515))))
+(let ((@x19479 (rewrite (= (and $x10321 $x10324 $x10333 $x10334 $x10335 $x10338 $x10340 $x11429 $x11536 $x19463) $x19477))))
+(let ((@x19468 (monotonicity (monotonicity @x19462 (= $x15921 $x19463)) (= $x15927 (and $x10321 $x10324 $x10333 $x10334 $x10335 $x10338 $x10340 $x11429 $x11536 $x19463)))))
+(let ((@x19487 (monotonicity (monotonicity (trans @x19468 @x19479 (= $x15927 $x19477)) (= $x15932 $x19482)) (= $x15938 (and $x10321 $x10322 $x19482)))))
+(let ((@x19494 (trans @x19487 (rewrite (= (and $x10321 $x10322 $x19482) $x19490)) (= $x15938 $x19490))))
+(let ((@x19500 (monotonicity (monotonicity @x19494 (= $x15943 $x19495)) (= $x15949 (and $x11515 $x11429 $x11432 $x19495)))))
+(let ((@x19508 (trans @x19500 (rewrite (= (and $x11515 $x11429 $x11432 $x19495) $x19504)) (= $x15949 $x19504))))
+(let ((@x19525 (monotonicity (monotonicity @x19508 @x19519 (= $x15964 $x19520)) (= $x15970 (and $x10321 $x10324 $x11429 $x11432 $x19520)))))
+(let ((@x19532 (trans @x19525 (rewrite (= (and $x10321 $x10324 $x11429 $x11432 $x19520) $x19528)) (= $x15970 $x19528))))
+(let ((@x19538 (monotonicity (monotonicity @x19532 (= $x15975 $x19533)) (= $x15981 (and $x10321 $x10322 $x19533)))))
+(let ((@x19545 (trans @x19538 (rewrite (= (and $x10321 $x10322 $x19533) $x19541)) (= $x15981 $x19541))))
+(let ((@x19551 (monotonicity (monotonicity @x19545 (= $x15986 $x19546)) (= $x15992 (and $x11487 $x11429 $x11432 $x19546)))))
+(let ((@x19558 (trans @x19551 (rewrite (= (and $x11487 $x11429 $x11432 $x19546) $x19554)) (= $x15992 $x19554))))
+(let ((@x19359 (rewrite (= (or (or $x3763 $x16553 $x11871) $x11889) (or $x3763 $x16553 $x11871 $x11889)))))
+(let (($x13331 (and $x2815 $x12168 $x11873)))
+(let (($x13334 (not $x13331)))
+(let (($x13337 (or $x13334 $x11889)))
+(let ((@x19349 (monotonicity (rewrite (= $x13331 (not (or $x3763 $x16553 $x11871)))) (= $x13334 (not (not (or $x3763 $x16553 $x11871)))))))
+(let ((@x19353 (trans @x19349 (rewrite (= (not (not (or $x3763 $x16553 $x11871))) (or $x3763 $x16553 $x11871))) (= $x13334 (or $x3763 $x16553 $x11871)))))
+(let ((@x19361 (trans (monotonicity @x19353 (= $x13337 (or (or $x3763 $x16553 $x11871) $x11889))) @x19359 (= $x13337 (or $x3763 $x16553 $x11871 $x11889)))))
+(let ((@x19666 (monotonicity (quant-intro @x19361 (= $x13340 $x19362)) (monotonicity @x19558 @x19660 (= $x16064 $x19661)) (= $x16070 $x19664))))
+(let ((@x19693 (monotonicity (trans @x19666 (rewrite (= $x19664 $x19686)) (= $x16070 $x19686)) (= $x16075 $x19691))))
+(let ((@x19337 (rewrite (= (or (or $x3763 $x16553 $x11388) $x11404) (or $x3763 $x16553 $x11388 $x11404)))))
+(let (($x13283 (and $x2815 $x12168 $x11389)))
+(let (($x13286 (not $x13283)))
+(let (($x13289 (or $x13286 $x11404)))
+(let ((@x19327 (monotonicity (rewrite (= $x13283 (not (or $x3763 $x16553 $x11388)))) (= $x13286 (not (not (or $x3763 $x16553 $x11388)))))))
+(let ((@x19331 (trans @x19327 (rewrite (= (not (not (or $x3763 $x16553 $x11388))) (or $x3763 $x16553 $x11388))) (= $x13286 (or $x3763 $x16553 $x11388)))))
+(let ((@x19339 (trans (monotonicity @x19331 (= $x13289 (or (or $x3763 $x16553 $x11388) $x11404))) @x19337 (= $x13289 (or $x3763 $x16553 $x11388 $x11404)))))
+(let ((@x19696 (monotonicity (quant-intro @x19339 (= $x13292 $x19340)) @x19693 (= $x16078 (and $x19340 $x19691)))))
+(let ((@x19305 (monotonicity (rewrite (= (and $x15523 $x15524 (not $x15525)) (not (or $x19297 $x19298 $x15525)))) (= $x15528 (not (not (or $x19297 $x19298 $x15525)))))))
+(let ((@x19309 (trans @x19305 (rewrite (= (not (not (or $x19297 $x19298 $x15525))) (or $x19297 $x19298 $x15525))) (= $x15528 (or $x19297 $x19298 $x15525)))))
+(let ((@x19317 (trans (monotonicity @x19309 (= $x15534 (or (or $x19297 $x19298 $x15525) $x15533))) (rewrite (= (or (or $x19297 $x19298 $x15525) $x15533) $x19313)) (= $x15534 $x19313))))
+(let ((@x19707 (monotonicity (monotonicity @x19317 (= $x15535 $x19318)) (trans @x19696 (rewrite (= (and $x19340 $x19691) $x19700)) (= $x16078 $x19700)) (= $x16081 $x19705))))
+(let ((@x19717 (trans (monotonicity @x19707 (= $x16084 (and $x11382 $x19705))) (rewrite (= (and $x11382 $x19705) $x19713)) (= $x16084 $x19713))))
+(let ((@x19723 (monotonicity (monotonicity @x19717 (= $x16087 $x19718)) (= $x16093 (and $x10138 $x10141 $x10145 $x10146 $x10147 $x10148 $x19718)))))
+(let ((@x19734 (trans @x19723 (rewrite (= (and $x10138 $x10141 $x10145 $x10146 $x10147 $x10148 $x19718) $x19730)) (= $x16093 $x19730))))
+(let ((@x19740 (monotonicity (monotonicity @x19734 (= $x16098 $x19735)) (= $x16104 (and $x10138 $x10139 $x19735)))))
+(let ((@x19747 (trans @x19740 (rewrite (= (and $x10138 $x10139 $x19735) $x19743)) (= $x16104 $x19743))))
+(let ((@x19753 (monotonicity (monotonicity @x19747 (= $x16109 $x19748)) (= $x16112 (and $x10136 $x19748)))))
+(let ((@x19763 (monotonicity (trans @x19753 (rewrite (= (and $x10136 $x19748) $x19756)) (= $x16112 $x19756)) (= $x16115 $x19761))))
+(let (($x15746 (<= (+ ?x15744 (* (- 1) v_b_S_result_G_0$)) 0)))
+(let (($x15741 (and $x15736 $x15737 (not (>= (+ ?v0!15 (* (- 1) v_b_P_H_len$)) 0)))))
+(let (($x15748 (not (or (not $x15741) $x15746))))
+(let (($x15769 (or $x15748 $x15765)))
+(let (($x15732 (not $x11797)))
+(let (($x15773 (and $x15732 $x15769)))
+(let (($x15777 (or $x15729 $x15773)))
+(let (($x15726 (not $x11777)))
+(let (($x15781 (and $x15726 $x15777)))
+(let (($x15636 (<= (+ ?x15634 (* (- 1) v_b_L_H_max_G_3$)) 0)))
+(let (($x15638 (not (or (not (and $x15626 $x15627 (not (>= (+ ?v0!14 ?x11581) 0)))) $x15636))))
+(let (($x15655 (or $x15638 $x15651)))
+(let (($x15622 (not $x11612)))
+(let (($x15659 (and $x15622 $x15655)))
+(let (($x15663 (or $x11612 $x15659)))
+(let (($x13358 (and $x11570 $x13353 $x11580 $x10358 $x11578 $x11536)))
+(let (($x13361 (not $x13358)))
+(let (($x15617 (not $x13361)))
+(let (($x15667 (and $x15617 $x15663)))
+(let (($x15671 (or $x15611 $x15614 $x15667)))
+(let (($x15695 (not $x11730)))
+(let (($x15698 (and $x15695 $x15671)))
+(let (($x15608 (not $x11567)))
+(let (($x15675 (and $x15608 $x15671)))
+(let (($x15679 (or $x15590 $x15599 $x15675)))
+(let (($x15596 (not $x11001)))
+(let (($x15683 (and $x15596 $x15679)))
+(let (($x15687 (or $x15590 $x15593 $x15683)))
+(let (($x15605 (not $x11532)))
+(let (($x15691 (and $x15605 $x15687)))
+(let (($x15702 (or $x15691 $x15698)))
+(let (($x15602 (not $x11512)))
+(let (($x15706 (and $x15602 $x15702)))
+(let (($x15710 (or $x15590 $x15599 $x15706)))
+(let (($x15714 (and $x15596 $x15710)))
+(let (($x15718 (or $x15590 $x15593 $x15714)))
+(let (($x15587 (not $x11501)))
+(let (($x15722 (and $x15587 $x15718)))
+(let (($x15785 (or $x15722 $x15781)))
+(let (($x15584 (not $x11481)))
+(let (($x13343 (and $x11260 $x10167 $x11911 $x13304 $x13315 $x11901 $x13326 $x11898 $x13340 $x11868 $x10192 $x11429 $x11432)))
+(let (($x15789 (and $x13343 $x15584 $x15785)))
+(let (($x15545 (not $x11260)))
+(let (($x15793 (or $x15545 $x15548 $x15789)))
+(let (($x15797 (and $x13292 $x15793)))
+(let (($x15801 (or $x15535 $x15797)))
+(let (($x15519 (not $x11385)))
+(let (($x15805 (and $x15519 $x15801)))
+(let (($x15809 (or $x11385 $x15805)))
+(let (($x15514 (not $x11379)))
+(let (($x15813 (and $x15514 $x15809)))
+(let (($x15817 (or $x15502 $x15511 $x15813)))
+(let (($x15508 (not $x11209)))
+(let (($x15821 (and $x15508 $x15817)))
+(let (($x15825 (or $x15502 $x15505 $x15821)))
+(let (($x15499 (not $x11221)))
+(let (($x15829 (and $x15499 $x15825)))
+(let (($x15833 (or $x11221 $x15829)))
+(let (($x16024 (= (+ ?x15744 (* (- 1) v_b_S_result_G_0$)) (+ (* (- 1) v_b_S_result_G_0$) ?x15744))))
+(let ((@x16028 (monotonicity (rewrite $x16024) (= $x15746 (<= (+ (* (- 1) v_b_S_result_G_0$) ?x15744) 0)))))
+(let ((@x16035 (trans @x16028 (rewrite (= (<= (+ (* (- 1) v_b_S_result_G_0$) ?x15744) 0) $x16031)) (= $x15746 $x16031))))
+(let (($x15739 (>= (+ ?v0!15 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x16002 (= (+ ?v0!15 (* (- 1) v_b_P_H_len$)) (+ (* (- 1) v_b_P_H_len$) ?v0!15))))
+(let ((@x16006 (monotonicity (rewrite $x16002) (= $x15739 (>= (+ (* (- 1) v_b_P_H_len$) ?v0!15) 0)))))
+(let ((@x16013 (trans @x16006 (rewrite (= (>= (+ (* (- 1) v_b_P_H_len$) ?v0!15) 0) $x16009)) (= $x15739 $x16009))))
+(let ((@x16019 (monotonicity (monotonicity @x16013 (= (not $x15739) $x16014)) (= $x15741 $x16017))))
+(let ((@x16038 (monotonicity (monotonicity @x16019 (= (not $x15741) $x16020)) @x16035 (= (or (not $x15741) $x15746) $x16036))))
+(let ((@x16047 (monotonicity (rewrite (= $x15732 $x11792)) (monotonicity (monotonicity @x16038 (= $x15748 $x16039)) (= $x15769 $x16042)) (= $x15773 (and $x11792 $x16042)))))
+(let ((@x16055 (monotonicity (trans @x16047 (rewrite (= (and $x11792 $x16042) $x16048)) (= $x15773 $x16048)) (= $x15777 $x16053))))
+(let ((@x16058 (monotonicity (rewrite (= $x15726 $x11772)) @x16055 (= $x15781 (and $x11772 $x16053)))))
+(let (($x15899 (= (or (not (and $x15626 $x15627 (not (>= (+ ?v0!14 ?x11581) 0)))) $x15636) $x15898)))
+(let (($x15886 (= (+ ?x15634 (* (- 1) v_b_L_H_max_G_3$)) (+ (* (- 1) v_b_L_H_max_G_3$) ?x15634))))
+(let ((@x15890 (monotonicity (rewrite $x15886) (= $x15636 (<= (+ (* (- 1) v_b_L_H_max_G_3$) ?x15634) 0)))))
+(let ((@x15897 (trans @x15890 (rewrite (= (<= (+ (* (- 1) v_b_L_H_max_G_3$) ?x15634) 0) $x15893)) (= $x15636 $x15893))))
+(let ((@x15868 (monotonicity (rewrite (= (+ ?v0!14 ?x11581) (+ ?x11581 ?v0!14))) (= (>= (+ ?v0!14 ?x11581) 0) (>= (+ ?x11581 ?v0!14) 0)))))
+(let ((@x15875 (trans @x15868 (rewrite (= (>= (+ ?x11581 ?v0!14) 0) $x15871)) (= (>= (+ ?v0!14 ?x11581) 0) $x15871))))
+(let ((@x15881 (monotonicity (monotonicity @x15875 (= (not (>= (+ ?v0!14 ?x11581) 0)) $x15876)) (= (and $x15626 $x15627 (not (>= (+ ?v0!14 ?x11581) 0))) $x15879))))
+(let ((@x15884 (monotonicity @x15881 (= (not (and $x15626 $x15627 (not (>= (+ ?v0!14 ?x11581) 0)))) $x15882))))
+(let ((@x15906 (monotonicity (monotonicity (monotonicity @x15884 @x15897 $x15899) (= $x15638 $x15901)) (= $x15655 $x15904))))
+(let ((@x15912 (monotonicity (monotonicity (rewrite (= $x15622 $x11608)) @x15906 (= $x15659 $x15907)) (= $x15663 $x15910))))
+(let ((@x15915 (monotonicity (rewrite (= $x15617 $x13358)) @x15912 (= $x15667 (and $x13358 $x15910)))))
+(let ((@x15923 (monotonicity (trans @x15915 (rewrite (= (and $x13358 $x15910) $x15916)) (= $x15667 $x15916)) (= $x15671 $x15921))))
+(let ((@x15958 (monotonicity (rewrite (= $x15695 $x11725)) @x15923 (= $x15698 (and $x11725 $x15921)))))
+(let ((@x15926 (monotonicity (rewrite (= $x15608 $x11562)) @x15923 (= $x15675 (and $x11562 $x15921)))))
+(let ((@x15934 (monotonicity (trans @x15926 (rewrite (= (and $x11562 $x15921) $x15927)) (= $x15675 $x15927)) (= $x15679 $x15932))))
+(let ((@x15937 (monotonicity (rewrite (= $x15596 $x10323)) @x15934 (= $x15683 (and $x10323 $x15932)))))
+(let ((@x15945 (monotonicity (trans @x15937 (rewrite (= (and $x10323 $x15932) $x15938)) (= $x15683 $x15938)) (= $x15687 $x15943))))
+(let ((@x15948 (monotonicity (rewrite (= $x15605 $x11527)) @x15945 (= $x15691 (and $x11527 $x15943)))))
+(let ((@x15966 (monotonicity (trans @x15948 (rewrite (= (and $x11527 $x15943) $x15949)) (= $x15691 $x15949)) (trans @x15958 (rewrite (= (and $x11725 $x15921) $x15959)) (= $x15698 $x15959)) (= $x15702 $x15964))))
+(let ((@x15969 (monotonicity (rewrite (= $x15602 $x11507)) @x15966 (= $x15706 (and $x11507 $x15964)))))
+(let ((@x15977 (monotonicity (trans @x15969 (rewrite (= (and $x11507 $x15964) $x15970)) (= $x15706 $x15970)) (= $x15710 $x15975))))
+(let ((@x15980 (monotonicity (rewrite (= $x15596 $x10323)) @x15977 (= $x15714 (and $x10323 $x15975)))))
+(let ((@x15988 (monotonicity (trans @x15980 (rewrite (= (and $x10323 $x15975) $x15981)) (= $x15714 $x15981)) (= $x15718 $x15986))))
+(let ((@x15991 (monotonicity (rewrite (= $x15587 $x11496)) @x15988 (= $x15722 (and $x11496 $x15986)))))
+(let ((@x16066 (monotonicity (trans @x15991 (rewrite (= (and $x11496 $x15986) $x15992)) (= $x15722 $x15992)) (trans @x16058 (rewrite (= (and $x11772 $x16053) $x16059)) (= $x15781 $x16059)) (= $x15785 $x16064))))
+(let ((@x16069 (monotonicity (rewrite (= $x15584 $x11476)) @x16066 (= $x15789 (and $x13343 $x11476 $x16064)))))
+(let ((@x16074 (trans @x16069 (rewrite (= (and $x13343 $x11476 $x16064) $x16070)) (= $x15789 $x16070))))
+(let ((@x16080 (monotonicity (monotonicity (rewrite (= $x15545 $x11259)) @x16074 (= $x15793 $x16075)) (= $x15797 $x16078))))
+(let ((@x16086 (monotonicity (rewrite (= $x15519 $x11382)) (monotonicity @x16080 (= $x15801 $x16081)) (= $x15805 $x16084))))
+(let ((@x16092 (monotonicity (rewrite (= $x15514 $x11374)) (monotonicity @x16086 (= $x15809 $x16087)) (= $x15813 (and $x11374 $x16087)))))
+(let ((@x16100 (monotonicity (trans @x16092 (rewrite (= (and $x11374 $x16087) $x16093)) (= $x15813 $x16093)) (= $x15817 $x16098))))
+(let ((@x16103 (monotonicity (rewrite (= $x15508 $x10140)) @x16100 (= $x15821 (and $x10140 $x16098)))))
+(let ((@x16111 (monotonicity (trans @x16103 (rewrite (= (and $x10140 $x16098) $x16104)) (= $x15821 $x16104)) (= $x15825 $x16109))))
+(let ((@x16117 (monotonicity (monotonicity (rewrite (= $x15499 $x10136)) @x16111 (= $x15829 $x16112)) (= $x15833 $x16115))))
+(let (($x13451 (exists ((?v0 Int) )(let ((?x10163 (b_S_read_n_u1$ v_b_S_s$ (b_S_idx$ (b_S_ptr$ b_T_T_u1$ v_b_P_H_arr$) ?v0 b_T_T_u1$))))
+(let (($x10238 (= ?x10163 v_b_S_result_G_0$)))
+(let (($x11800 (>= (+ ?v0 (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x11802 (not $x11800)))
+(let (($x12168 (<= ?v0 4294967295)))
+(let (($x2815 (>= ?v0 0)))
+(and $x2815 $x12168 $x11802 $x10238))))))))
+))
+(let (($x13445 (not $x13442)))
+(let (($x13454 (or $x13445 $x13451)))
+(let (($x13457 (and $x13442 $x13454)))
+(let (($x13460 (or $x11797 $x13457)))
+(let (($x13463 (and b_S_position_n_marker$ $x13460)))
+(let (($x13466 (or $x11777 $x13463)))
+(let (($x13376 (not $x13373)))
+(let (($x13379 (or $x13376 $x11651)))
+(let (($x13382 (and $x13373 $x13379)))
+(let (($x13385 (or $x11612 $x13382)))
+(let (($x13388 (and $x11608 $x13385)))
+(let (($x13391 (or $x13361 $x13388)))
+(let (($x13394 (and $x11570 $x13353 $x13391)))
+(let (($x13412 (or $x11730 $x13394)))
+(let (($x13397 (or $x11567 $x13394)))
+(let (($x13400 (and $x10321 $x10324 $x13397)))
+(let (($x13403 (or $x11001 $x13400)))
+(let (($x13406 (and $x10321 $x10322 $x13403)))
+(let (($x13409 (or $x11532 $x13406)))
+(let (($x13415 (and $x13409 $x13412)))
+(let (($x13418 (or $x11512 $x13415)))
+(let (($x13421 (and $x10321 $x10324 $x13418)))
+(let (($x13424 (or $x11001 $x13421)))
+(let (($x13427 (and $x10321 $x10322 $x13424)))
+(let (($x13430 (or $x11501 $x13427)))
+(let (($x13469 (and $x13430 $x13466)))
+(let (($x13346 (not $x13343)))
+(let (($x13472 (or $x13346 $x11481 $x13469)))
+(let (($x13475 (and $x11260 $x10167 $x13472)))
+(let (($x13295 (not $x13292)))
+(let (($x13478 (or $x13295 $x13475)))
+(let (($x13481 (and $x13292 $x13478)))
+(let (($x13484 (or $x11385 $x13481)))
+(let (($x13487 (and $x11382 $x13484)))
+(let (($x13490 (or $x11379 $x13487)))
+(let (($x13493 (and $x10138 $x10141 $x13490)))
+(let (($x13496 (or $x11209 $x13493)))
+(let (($x13499 (and $x10138 $x10139 $x13496)))
+(let (($x13502 (or $x11221 $x13499)))
+(let (($x13508 (not (and $x10136 $x13502))))
+(let ((@x15760 (refl (~ (not (and $x2815 $x12168 $x11802 $x10238)) (not (and $x2815 $x12168 $x11802 $x10238))))))
+(let ((@x15757 (nnf-neg (nnf-pos (refl (~ $x13439 $x13439)) (~ $x13442 $x13442)) (~ (not $x13445) $x13442))))
+(let ((@x15768 (nnf-neg @x15757 (nnf-neg @x15760 (~ (not $x13451) $x15761)) (~ (not $x13454) $x15765))))
+(let ((@x15776 (nnf-neg (refl (~ $x15732 $x15732)) (nnf-neg (sk (~ $x13445 $x15748)) @x15768 (~ (not $x13457) $x15769)) (~ (not $x13460) $x15773))))
+(let ((@x15784 (nnf-neg (refl (~ $x15726 $x15726)) (nnf-neg (refl (~ $x15729 $x15729)) @x15776 (~ (not $x13463) $x15777)) (~ (not $x13466) $x15781))))
+(let ((@x15647 (nnf-neg (nnf-pos (refl (~ $x13370 $x13370)) (~ $x13373 $x13373)) (~ (not $x13376) $x13373))))
+(let ((@x15658 (nnf-neg (sk (~ $x13376 $x15638)) (nnf-neg @x15647 (refl (~ $x15648 $x15648)) (~ (not $x13379) $x15651)) (~ (not $x13382) $x15655))))
+(let ((@x15666 (nnf-neg (refl (~ $x11612 $x11612)) (nnf-neg (refl (~ $x15622 $x15622)) @x15658 (~ (not $x13385) $x15659)) (~ (not $x13388) $x15663))))
+(let ((@x15674 (nnf-neg (refl (~ $x15611 $x15611)) (refl (~ $x15614 $x15614)) (nnf-neg (refl (~ $x15617 $x15617)) @x15666 (~ (not $x13391) $x15667)) (~ (not $x13394) $x15671))))
+(let ((@x15592 (refl (~ $x15590 $x15590))))
+(let ((@x15682 (nnf-neg @x15592 (refl (~ $x15599 $x15599)) (nnf-neg (refl (~ $x15608 $x15608)) @x15674 (~ (not $x13397) $x15675)) (~ (not $x13400) $x15679))))
+(let ((@x15690 (nnf-neg @x15592 (refl (~ $x15593 $x15593)) (nnf-neg (refl (~ $x15596 $x15596)) @x15682 (~ (not $x13403) $x15683)) (~ (not $x13406) $x15687))))
+(let ((@x15705 (nnf-neg (nnf-neg (refl (~ $x15605 $x15605)) @x15690 (~ (not $x13409) $x15691)) (nnf-neg (refl (~ $x15695 $x15695)) @x15674 (~ (not $x13412) $x15698)) (~ (not $x13415) $x15702))))
+(let ((@x15713 (nnf-neg @x15592 (refl (~ $x15599 $x15599)) (nnf-neg (refl (~ $x15602 $x15602)) @x15705 (~ (not $x13418) $x15706)) (~ (not $x13421) $x15710))))
+(let ((@x15721 (nnf-neg @x15592 (refl (~ $x15593 $x15593)) (nnf-neg (refl (~ $x15596 $x15596)) @x15713 (~ (not $x13424) $x15714)) (~ (not $x13427) $x15718))))
+(let ((@x15788 (nnf-neg (nnf-neg (refl (~ $x15587 $x15587)) @x15721 (~ (not $x13430) $x15722)) @x15784 (~ (not $x13469) $x15785))))
+(let ((@x15580 (monotonicity (refl (~ $x11260 $x11260)) (refl (~ $x10167 $x10167)) (refl (~ $x11911 $x11911)) (refl (~ $x13304 $x13304)) (refl (~ $x13315 $x13315)) (refl (~ $x11901 $x11901)) (refl (~ $x13326 $x13326)) (refl (~ $x11898 $x11898)) (nnf-pos (refl (~ $x13337 $x13337)) (~ $x13340 $x13340)) (refl (~ $x11868 $x11868)) (refl (~ $x10192 $x10192)) (refl (~ $x11429 $x11429)) (refl (~ $x11432 $x11432)) (~ $x13343 $x13343))))
+(let ((@x15792 (nnf-neg (nnf-neg @x15580 (~ (not $x13346) $x13343)) (refl (~ $x15584 $x15584)) @x15788 (~ (not $x13472) $x15789))))
+(let ((@x15796 (nnf-neg (refl (~ $x15545 $x15545)) (refl (~ $x15548 $x15548)) @x15792 (~ (not $x13475) $x15793))))
+(let ((@x15544 (nnf-neg (nnf-pos (refl (~ $x13289 $x13289)) (~ $x13292 $x13292)) (~ (not $x13295) $x13292))))
+(let ((@x15804 (nnf-neg (sk (~ $x13295 $x15535)) (nnf-neg @x15544 @x15796 (~ (not $x13478) $x15797)) (~ (not $x13481) $x15801))))
+(let ((@x15812 (nnf-neg (refl (~ $x11385 $x11385)) (nnf-neg (refl (~ $x15519 $x15519)) @x15804 (~ (not $x13484) $x15805)) (~ (not $x13487) $x15809))))
+(let ((@x15820 (nnf-neg (refl (~ $x15502 $x15502)) (refl (~ $x15511 $x15511)) (nnf-neg (refl (~ $x15514 $x15514)) @x15812 (~ (not $x13490) $x15813)) (~ (not $x13493) $x15817))))
+(let ((@x15828 (nnf-neg (refl (~ $x15502 $x15502)) (refl (~ $x15505 $x15505)) (nnf-neg (refl (~ $x15508 $x15508)) @x15820 (~ (not $x13496) $x15821)) (~ (not $x13499) $x15825))))
+(let ((@x15835 (nnf-neg (refl (~ $x11221 $x11221)) (nnf-neg (refl (~ $x15499 $x15499)) @x15828 (~ (not $x13502) $x15829)) (~ $x13508 $x15833))))
+(let (($x6441 (= b_S_max_o_u4$ 4294967295)))
+(let ((@x6435 (monotonicity (rewrite (= (* 65536 65536) 4294967296)) (= (- (* 65536 65536) 1) (- 4294967296 1)))))
+(let ((@x6440 (trans @x6435 (rewrite (= (- 4294967296 1) 4294967295)) (= (- (* 65536 65536) 1) 4294967295))))
+(let ((@x6443 (monotonicity @x6440 (= (= b_S_max_o_u4$ (- (* 65536 65536) 1)) $x6441))))
+(let ((@x6446 (mp (asserted (= b_S_max_o_u4$ (- (* 65536 65536) 1))) @x6443 $x6441)))
+(let ((@x12140 (trans (monotonicity @x6446 (= ?x3113 (* (- 1) 4294967295))) (rewrite (= (* (- 1) 4294967295) (- 4294967295))) (= ?x3113 (- 4294967295)))))
+(let ((@x12164 (trans (monotonicity @x12140 (= ?x3114 (+ ?0 (- 4294967295)))) (rewrite (= (+ ?0 (- 4294967295)) (+ (- 4294967295) ?0))) (= ?x3114 (+ (- 4294967295) ?0)))))
+(let ((@x12172 (trans (monotonicity @x12164 (= $x3115 (<= (+ (- 4294967295) ?0) 0))) (rewrite (= (<= (+ (- 4294967295) ?0) 0) $x12168)) (= $x3115 $x12168))))
+(let ((@x13453 (quant-intro (monotonicity @x12172 (= $x11839 (and $x2815 $x12168 $x11802 $x10238))) (= $x11844 $x13451))))
+(let ((@x13441 (monotonicity (monotonicity (monotonicity @x12172 (= $x11808 $x13433)) (= $x11813 $x13436)) (= $x11821 $x13439))))
+(let ((@x13456 (monotonicity (monotonicity (quant-intro @x13441 (= $x11824 $x13442)) (= $x11827 $x13445)) @x13453 (= $x11847 $x13454))))
+(let ((@x13462 (monotonicity (monotonicity (quant-intro @x13441 (= $x11824 $x13442)) @x13456 (= $x11850 $x13457)) (= $x11853 $x13460))))
+(let ((@x13372 (monotonicity (monotonicity (monotonicity @x12172 (= $x11623 $x13364)) (= $x11628 $x13367)) (= $x11636 $x13370))))
+(let ((@x13381 (monotonicity (monotonicity (quant-intro @x13372 (= $x11639 $x13373)) (= $x11642 $x13376)) (= $x11654 $x13379))))
+(let ((@x13387 (monotonicity (monotonicity (quant-intro @x13372 (= $x11639 $x13373)) @x13381 (= $x11657 $x13382)) (= $x11660 $x13385))))
+(let ((@x13351 (monotonicity (monotonicity @x6446 (= ?x11574 (+ 4294967295 ?x11484))) (= $x11573 (>= (+ 4294967295 ?x11484) 1)))))
+(let ((@x13357 (trans @x13351 (rewrite (= (>= (+ 4294967295 ?x11484) 1) $x13353)) (= $x11573 $x13353))))
+(let ((@x13393 (monotonicity (monotonicity (monotonicity @x13357 (= $x11600 $x13358)) (= $x11605 $x13361)) (monotonicity @x13387 (= $x11663 $x13388)) (= $x11666 $x13391))))
+(let ((@x13414 (monotonicity (monotonicity @x13357 @x13393 (= $x11672 $x13394)) (= $x11733 $x13412))))
+(let ((@x13399 (monotonicity (monotonicity @x13357 @x13393 (= $x11672 $x13394)) (= $x11677 $x13397))))
+(let ((@x13408 (monotonicity (monotonicity (monotonicity @x13399 (= $x11683 $x13400)) (= $x11688 $x13403)) (= $x11694 $x13406))))
+(let ((@x13417 (monotonicity (monotonicity @x13408 (= $x11699 $x13409)) @x13414 (= $x11736 $x13415))))
+(let ((@x13426 (monotonicity (monotonicity (monotonicity @x13417 (= $x11739 $x13418)) (= $x11745 $x13421)) (= $x11750 $x13424))))
+(let ((@x13471 (monotonicity (monotonicity (monotonicity @x13426 (= $x11756 $x13427)) (= $x11761 $x13430)) (monotonicity (monotonicity @x13462 (= $x11856 $x13463)) (= $x11859 $x13466)) (= $x11862 $x13469))))
+(let ((@x13339 (monotonicity (monotonicity (monotonicity @x12172 (= $x11879 $x13331)) (= $x11884 $x13334)) (= $x11892 $x13337))))
+(let ((@x13325 (monotonicity (monotonicity @x6446 (= ?x11574 (+ 4294967295 ?x11484))) (= $x11904 (>= (+ 4294967295 ?x11484) 0)))))
+(let ((@x13330 (trans @x13325 (rewrite (= (>= (+ 4294967295 ?x11484) 0) $x13326)) (= $x11904 $x13326))))
+(let ((@x13314 (monotonicity (monotonicity @x6446 (= (+ b_S_max_o_u4$ ?x11865) (+ 4294967295 ?x11865))) (= $x11907 (>= (+ 4294967295 ?x11865) 0)))))
+(let ((@x13319 (trans @x13314 (rewrite (= (>= (+ 4294967295 ?x11865) 0) $x13315)) (= $x11907 $x13315))))
+(let (($x13299 (= (+ b_S_max_o_u1$ (* (- 1) v_b_L_H_max_G_1$)) (+ 255 (* (- 1) v_b_L_H_max_G_1$)))))
+(let (($x6449 (= b_S_max_o_u1$ 255)))
+(let ((@x6450 (asserted $x6449)))
+(let ((@x13303 (monotonicity (monotonicity @x6450 $x13299) (= $x11914 (>= (+ 255 (* (- 1) v_b_L_H_max_G_1$)) 0)))))
+(let ((@x13308 (trans @x13303 (rewrite (= (>= (+ 255 (* (- 1) v_b_L_H_max_G_1$)) 0) $x13304)) (= $x11914 $x13304))))
+(let ((@x13345 (monotonicity @x13308 @x13319 @x13330 (quant-intro @x13339 (= $x11895 $x13340)) (= $x11957 $x13343))))
+(let ((@x13474 (monotonicity (monotonicity @x13345 (= $x11962 $x13346)) @x13471 (= $x11971 $x13472))))
+(let ((@x13291 (monotonicity (monotonicity (monotonicity @x12172 (= $x11395 $x13283)) (= $x11400 $x13286)) (= $x11408 $x13289))))
+(let ((@x13480 (monotonicity (monotonicity (quant-intro @x13291 (= $x11411 $x13292)) (= $x11414 $x13295)) (monotonicity @x13474 (= $x11979 $x13475)) (= $x11984 $x13478))))
+(let ((@x13486 (monotonicity (monotonicity (quant-intro @x13291 (= $x11411 $x13292)) @x13480 (= $x11987 $x13481)) (= $x11990 $x13484))))
+(let ((@x13495 (monotonicity (monotonicity (monotonicity @x13486 (= $x11993 $x13487)) (= $x11996 $x13490)) (= $x12002 $x13493))))
+(let ((@x13504 (monotonicity (monotonicity (monotonicity @x13495 (= $x12007 $x13496)) (= $x12013 $x13499)) (= $x12018 $x13502))))
+(let ((@x13510 (monotonicity (monotonicity @x13504 (= $x12021 (and $x10136 $x13502))) (= (not $x12021) $x13508))))
+(let ((@x13511 (mp (not-or-elim (mp (asserted $x10434) @x12031 $x12027) (not $x12021)) @x13510 $x13508)))
+(let ((@x20143 (mp (mp (mp (mp~ @x13511 @x15835 $x15833) @x16117 $x16115) @x19763 $x19761) (monotonicity @x20139 (= $x19761 $x20140)) $x20140)))
+(let ((@x24002 (unit-resolution (def-axiom (or $x20134 $x20128)) (unit-resolution @x20143 @x22434 $x20137) $x20128)))
+(let ((?x22514 (b_S_typ$ ?x10137)))
+(let (($x22515 (= ?x22514 b_T_T_u1$)))
+(let ((@x22856 (trans (unit-resolution @x22581 (unit-resolution @x22577 @x18183 $x22565) $x22556) @x22852 (= ?x10137 ?x10078))))
+(let ((@x22875 (trans (monotonicity @x22856 (= ?x22514 ?x21175)) (unit-resolution @x21182 @x19846 $x21176) $x22515)))
+(let (($x22507 (not $x22515)))
+(let (($x22522 (= $x10138 $x22515)))
+(let (($x22949 (or $x22002 $x22522)))
+(let ((@x22487 ((_ quant-inst (b_S_idx$ ?x10078 0 b_T_T_u1$) b_T_T_u1$) $x22949)))
+(let ((@x22509 (unit-resolution (def-axiom (or (not $x22522) $x10138 $x22507)) (hypothesis $x15502) (or (not $x22522) $x22507))))
+(let ((@x22873 (unit-resolution (unit-resolution @x22509 (unit-resolution @x22487 @x19833 $x22522) $x22507) @x22875 false)))
+(let ((@x22876 (lemma @x22873 $x10138)))
+(let ((@x23964 (unit-resolution (def-axiom (or $x20131 $x15502 $x15505 $x20125)) (unit-resolution (def-axiom (or $x22603 $x10139)) @x22760 $x10139) @x22876 @x24002 $x20125)))
+(let ((?x22963 (* (- 1) ?x10144)))
+(let ((?x22964 (+ v_b_L_H_max_G_0$ ?x22963)))
+(let (($x22965 (>= ?x22964 0)))
+(let ((@x20962 (def-axiom (or $x20119 $x15502 $x15511 $x20113))))
+(let ((@x22988 (unit-resolution @x20962 (hypothesis $x10138) (hypothesis $x10141) (hypothesis $x20116) $x20113)))
+(let ((@x20944 (def-axiom (or $x20110 $x10145))))
+(let ((@x23016 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x19724 $x22965)) (unit-resolution @x20944 @x22988 $x10145) $x22965)))
+(let (($x22455 (or $x21994 $x15502 $x22506)))
+(let ((@x22447 (mp ((_ quant-inst (b_S_idx$ ?x10078 0 b_T_T_u1$) b_T_T_u1$) (or $x21994 (or $x15502 $x22506))) (rewrite (= (or $x21994 (or $x15502 $x22506)) $x22455)) $x22455)))
+(let ((@x23003 (monotonicity ((_ th-lemma arith eq-propagate 0 0) (hypothesis $x15523) (hypothesis (not $x15525)) (= ?v0!13 0)) (= ?x15529 ?x10137))))
+(let ((@x23005 (trans @x23003 (unit-resolution @x22447 @x15336 (hypothesis $x10138) $x22506) (= ?x15529 ?x22505))))
+(let (($x23008 (or (not (= ?x15530 (b_S_read_n_u1$ v_b_S_s$ ?x22505))) (<= (+ ?x15530 (* (- 1) (b_S_read_n_u1$ v_b_S_s$ ?x22505))) 0))))
+(let ((@x23010 (unit-resolution ((_ th-lemma arith triangle-eq) $x23008) (monotonicity @x23005 (= ?x15530 (b_S_read_n_u1$ v_b_S_s$ ?x22505))) (<= (+ ?x15530 (* (- 1) (b_S_read_n_u1$ v_b_S_s$ ?x22505))) 0))))
+(let ((?x22685 (b_S_read_n_u1$ v_b_S_s$ ?x22505)))
+(let ((?x22773 (* (- 1) ?x22685)))
+(let ((?x22835 (+ ?x10144 ?x22773)))
+(let (($x22839 (>= ?x22835 0)))
+(let (($x22834 (= ?x10144 ?x22685)))
+(let ((@x23011 (symm (unit-resolution @x22447 @x15336 (hypothesis $x10138) $x22506) (= ?x22505 ?x10137))))
+(let ((@x23020 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x22834) $x22839)) (symm (monotonicity @x23011 (= ?x22685 ?x10144)) $x22834) $x22839)))
+(let ((@x23023 (lemma ((_ th-lemma arith farkas 1 -1 -1 1) @x23020 @x23010 (hypothesis $x20589) @x23016 false) (or $x15502 $x15533 $x19297 $x15525 $x15511 $x20119))))
+(let ((@x24012 (unit-resolution @x23023 @x22876 (unit-resolution (def-axiom (or $x20122 $x20116)) @x23964 $x20116) (or $x15533 $x19297 $x15525 $x15511))))
+(let ((@x24203 (unit-resolution (unit-resolution @x24012 @x23403 (or $x15533 $x19297 $x15525)) (unit-resolution (def-axiom (or $x19313 (not $x15525))) @x24016 (not $x15525)) (unit-resolution (def-axiom (or $x19313 $x15523)) @x24016 $x15523) (unit-resolution (def-axiom (or $x19313 $x20589)) @x24016 $x20589) false)))
+(let ((@x24417 (unit-resolution @x20962 @x22876 (unit-resolution (def-axiom (or $x20122 $x20116)) @x23964 $x20116) (or $x15511 $x20113))))
+(let ((@x24506 (unit-resolution (def-axiom (or $x20110 $x20104)) (unit-resolution @x24417 @x23403 $x20113) $x20104)))
+(let ((@x24507 (unit-resolution (def-axiom (or $x20107 $x11385 $x20101)) (lemma ((_ th-lemma arith farkas 1 1) @x12041 (hypothesis $x11385) false) $x11382) @x24506 $x20101)))
+(let ((@x24462 (unit-resolution (def-axiom (or $x20095 $x19318 $x20089)) (unit-resolution (def-axiom (or $x20098 $x20092)) @x24507 $x20092) $x20092)))
+(let ((@x24496 (unit-resolution (def-axiom (or $x20086 $x20080)) (unit-resolution @x24462 (lemma @x24203 $x19313) $x20089) $x20080)))
+(let ((@x24578 (mp (unit-resolution @x20944 (unit-resolution @x24417 @x23403 $x20113) $x10145) (symm (commutativity (= $x10167 $x10145)) (= $x10145 $x10167)) $x10167)))
+(let ((@x24580 (unit-resolution (def-axiom (or $x20083 $x11259 $x15548 $x20077)) @x12041 (or $x20083 $x15548 $x20077))))
+(let ((@x24583 (unit-resolution (unit-resolution @x24580 @x24578 (or $x20083 $x20077)) @x24496 $x20077)))
+(let ((@x24576 (unit-resolution (def-axiom (or $x20074 $x11901)) @x24583 $x11901)))
+(let ((@x24314 (unit-resolution (def-axiom (or $x20074 $x10192)) @x24583 $x10192)))
+(let ((@x24415 (unit-resolution (def-axiom (or $x20074 $x11868)) @x24583 $x11868)))
+(let ((@x24499 (unit-resolution (def-axiom (or $x20074 $x19898)) @x24583 $x19898)))
+(let (($x23168 (<= (+ v_b_L_H_p_G_0$ (* (- 1) ?v0!15)) 0)))
+(let (($x23092 (<= (+ v_b_L_H_max_G_1$ (* (- 1) v_b_S_result_G_0$)) 0)))
+(let (($x23088 (= v_b_L_H_max_G_1$ v_b_S_result_G_0$)))
+(let ((@x9231 (asserted b_S_position_n_marker$)))
+(let ((@x23318 (unit-resolution (unit-resolution (def-axiom (or $x20059 $x15729 $x20053)) @x9231 (or $x20059 $x20053)) (unit-resolution (def-axiom (or $x20062 $x20056)) (hypothesis $x20065) $x20056) $x20053)))
+(let ((@x23324 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x23088) $x23092)) (symm (unit-resolution (def-axiom (or $x20050 $x10222)) @x23318 $x10222) $x23088) $x23092)))
+(let (($x20801 (not $x16031)))
+(let ((@x23175 (hypothesis $x10192)))
+(let ((@x23180 (hypothesis $x11868)))
+(let (($x23140 (not (= ?x10191 v_b_S_result_G_0$))))
+(let (($x23145 (or $x20035 $x19501 $x19669 $x11867 $x23140)))
+(let (($x23036 (>= (+ v_b_SL_H_witness_G_0$ (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x23141 (or $x19501 $x19669 $x23036 $x23140)))
+(let (($x23146 (or $x20035 $x23141)))
+(let (($x23046 (= (>= (+ (* (- 1) v_b_P_H_len$) v_b_SL_H_witness_G_0$) 0) $x11867)))
+(let (($x23044 (= $x23036 (>= (+ (* (- 1) v_b_P_H_len$) v_b_SL_H_witness_G_0$) 0))))
+(let (($x23041 (= (+ v_b_SL_H_witness_G_0$ (* (- 1) v_b_P_H_len$)) (+ (* (- 1) v_b_P_H_len$) v_b_SL_H_witness_G_0$))))
+(let ((@x23049 (trans (monotonicity (rewrite $x23041) $x23044) (rewrite $x23046) (= $x23036 $x11867))))
+(let ((@x23150 (monotonicity (monotonicity @x23049 (= $x23141 (or $x19501 $x19669 $x11867 $x23140))) (= $x23146 (or $x20035 (or $x19501 $x19669 $x11867 $x23140))))))
+(let ((@x23154 (trans @x23150 (rewrite (= (or $x20035 (or $x19501 $x19669 $x11867 $x23140)) $x23145)) (= $x23146 $x23145))))
+(let ((@x23182 (unit-resolution (mp ((_ quant-inst v_b_SL_H_witness_G_0$) $x23146) @x23154 $x23145) (hypothesis $x13315) @x23180 (hypothesis $x11432) (hypothesis $x20030) (trans @x23175 (symm (hypothesis $x10222) $x23088) (= ?x10191 v_b_S_result_G_0$)) false)))
+(let ((@x23326 (unit-resolution (lemma @x23182 (or $x20035 $x19669 $x11867 $x19501 $x19674 $x19640)) (unit-resolution (def-axiom (or $x20050 $x10222)) @x23318 $x10222) @x23180 (hypothesis $x11432) @x23175 (hypothesis $x13315) $x20035)))
+(let ((@x23328 (unit-resolution (def-axiom (or $x20047 $x19580 $x20041)) (unit-resolution (def-axiom (or $x20038 $x20030)) @x23326 $x20038) (unit-resolution (def-axiom (or $x20050 $x20044)) @x23318 $x20044) $x19580)))
+(let ((@x23308 ((_ th-lemma arith farkas -1 1 1) (hypothesis (>= (+ v_b_L_H_max_G_1$ ?x16029) 0)) (hypothesis $x20801) (hypothesis $x23092) false)))
+(let ((@x23312 (lemma @x23308 (or (not (>= (+ v_b_L_H_max_G_1$ ?x16029) 0)) $x16031 (not $x23092)))))
+(let ((@x23330 (unit-resolution @x23312 (unit-resolution (def-axiom (or $x19575 $x20801)) @x23328 $x20801) @x23324 (not (>= (+ v_b_L_H_max_G_1$ ?x16029) 0)))))
+(let ((@x23333 (hypothesis $x19898)))
+(let (($x23188 (>= (+ v_b_L_H_max_G_1$ ?x16029) 0)))
+(let (($x23196 (or $x19903 $x19559 $x19560 $x23168 $x23188)))
+(let (($x23134 (<= (+ ?x15744 (* (- 1) v_b_L_H_max_G_1$)) 0)))
+(let (($x23114 (>= (+ ?v0!15 ?x11484) 0)))
+(let (($x23135 (or $x19559 $x19560 $x23114 $x23134)))
+(let (($x23197 (or $x19903 $x23135)))
+(let (($x23173 (= (+ ?x15744 (* (- 1) v_b_L_H_max_G_1$)) (+ (* (- 1) v_b_L_H_max_G_1$) ?x15744))))
+(let ((@x23186 (monotonicity (rewrite $x23173) (= $x23134 (<= (+ (* (- 1) v_b_L_H_max_G_1$) ?x15744) 0)))))
+(let ((@x23192 (trans @x23186 (rewrite (= (<= (+ (* (- 1) v_b_L_H_max_G_1$) ?x15744) 0) $x23188)) (= $x23134 $x23188))))
+(let ((@x23166 (monotonicity (rewrite (= (+ ?v0!15 ?x11484) (+ ?x11484 ?v0!15))) (= $x23114 (>= (+ ?x11484 ?v0!15) 0)))))
+(let ((@x23171 (trans @x23166 (rewrite (= (>= (+ ?x11484 ?v0!15) 0) $x23168)) (= $x23114 $x23168))))
+(let ((@x23201 (monotonicity (monotonicity @x23171 @x23192 (= $x23135 (or $x19559 $x19560 $x23168 $x23188))) (= $x23197 (or $x19903 (or $x19559 $x19560 $x23168 $x23188))))))
+(let ((@x23205 (trans @x23201 (rewrite (= (or $x19903 (or $x19559 $x19560 $x23168 $x23188)) $x23196)) (= $x23197 $x23196))))
+(let ((@x23335 (unit-resolution (mp ((_ quant-inst ?v0!15) $x23197) @x23205 $x23196) @x23333 (unit-resolution (def-axiom (or $x19575 $x15736)) @x23328 $x15736) (unit-resolution (def-axiom (or $x19575 $x15737)) @x23328 $x15737) (or $x23168 $x23188))))
+(let ((@x23338 ((_ th-lemma arith farkas -1 1 1) (unit-resolution (def-axiom (or $x19575 $x16014)) @x23328 $x16014) (unit-resolution @x23335 @x23330 $x23168) (unit-resolution (def-axiom (or $x20062 $x11486)) (hypothesis $x20065) $x11486) false)))
+(let ((@x24500 (unit-resolution (lemma @x23338 (or $x20062 $x19903 $x11867 $x19501 $x19674 $x19669)) @x24499 @x24415 (unit-resolution (def-axiom (or $x20074 $x11432)) @x24583 $x11432) @x24314 (unit-resolution (def-axiom (or $x20074 $x13315)) @x24583 $x13315) $x20062)))
+(let ((@x24502 (unit-resolution (def-axiom (or $x20071 $x20019 $x20065)) (unit-resolution (def-axiom (or $x20074 $x20068)) @x24583 $x20068) @x24500 $x20019)))
+(let ((@x24684 (unit-resolution (def-axiom (or $x20016 $x11487)) @x24502 $x11487)))
+(let ((@x24741 (mp @x22691 (symm (monotonicity @x24532 (= $x22596 $x22344)) (= $x22344 $x22596)) $x22596)))
+(let ((@x23420 (hypothesis $x11487)))
+(let (($x23378 (or $x22629 $x19677 $x21489 $x22597 $x19670 $x11486 $x23363)))
+(let (($x23360 (>= (+ v_b_L_H_p_G_0$ (* (- 1) v_b_P_H_len$)) 0)))
+(let (($x23364 (or $x19677 $x21489 $x22597 $x19670 $x23360 $x23363)))
+(let (($x23379 (or $x22629 $x23364)))
+(let ((@x23372 (rewrite (= (>= (+ (* (- 1) v_b_P_H_len$) v_b_L_H_p_G_0$) 0) $x11486))))
+(let (($x23366 (= (+ v_b_L_H_p_G_0$ (* (- 1) v_b_P_H_len$)) (+ (* (- 1) v_b_P_H_len$) v_b_L_H_p_G_0$))))
+(let ((@x23370 (monotonicity (rewrite $x23366) (= $x23360 (>= (+ (* (- 1) v_b_P_H_len$) v_b_L_H_p_G_0$) 0)))))
+(let ((@x23377 (monotonicity (trans @x23370 @x23372 (= $x23360 $x11486)) (= $x23364 (or $x19677 $x21489 $x22597 $x19670 $x11486 $x23363)))))
+(let ((@x23383 (monotonicity @x23377 (= $x23379 (or $x22629 (or $x19677 $x21489 $x22597 $x19670 $x11486 $x23363))))))
+(let ((@x23387 (trans @x23383 (rewrite (= (or $x22629 (or $x19677 $x21489 $x22597 $x19670 $x11486 $x23363)) $x23378)) (= $x23379 $x23378))))
+(let ((@x23388 (mp ((_ quant-inst v_b_S_s$ v_b_P_H_arr$ (b_S_ptr$ ?x10076 ?x21014) v_b_P_H_len$ v_b_L_H_p_G_0$ b_T_T_u1$) $x23379) @x23387 $x23378)))
+(let ((@x23422 (unit-resolution @x23388 @x18670 @x9769 @x12050 (hypothesis $x11901) @x23420 (hypothesis $x22596) (hypothesis $x23362) false)))
+(let ((@x24788 (unit-resolution (lemma @x23422 (or $x23363 $x19670 $x11486 $x22597)) @x24741 (or $x23363 $x19670 $x11486))))
+(let ((@x24697 (unit-resolution (def-axiom (or $x23362 $x23297)) (unit-resolution @x24788 @x24684 @x24576 $x23363) $x23297)))
+(let (($x23782 (b_S_in_n_wrapped_n_domain$ v_b_S_s$ ?x24218)))
+(let ((?x23727 (b_S_owner$ v_b_S_s$ ?x24218)))
+(let (($x23776 (= ?x23727 b_S_me$)))
+(let (($x23785 (or $x23776 $x23782)))
+(let (($x24475 (not $x23785)))
+(let ((?x23730 (b_S_typ$ ?x24218)))
+(let ((?x23768 (b_S_kind_n_of$ ?x23730)))
+(let (($x23769 (= ?x23768 b_S_kind_n_primitive$)))
+(let (($x23728 (not $x23804)))
+(let (($x23770 (not $x23805)))
+(let (($x24476 (or $x23770 $x23728 $x23769 $x24475)))
+(let (($x24627 (b_S_in_n_wrapped_n_domain$ v_b_S_s$ ?x23225)))
+(let (($x24478 (= (b_S_owner$ v_b_S_s$ ?x23225) b_S_me$)))
+(let (($x24943 (or $x24478 $x24627)))
+(let (($x25004 (not $x24943)))
+(let (($x24820 (or $x23805 $x25004)))
+(let (($x24623 (not $x24820)))
+(let (($x24474 (not $x24476)))
+(let (($x24809 (or $x24474 $x24623)))
+(let (($x24810 (not $x24809)))
+(let (($x24209 (b_S_typed$ v_b_S_s$ ?x23225)))
+(let (($x24210 (not $x24209)))
+(let (($x24817 (or $x24210 $x24810)))
+(let (($x24818 (not $x24817)))
+(let (($x23783 (b_S_thread_n_local$ v_b_S_s$ ?x23225)))
+(let (($x24819 (= $x23783 $x24818)))
+(let (($x24622 (or (not $x19072) $x24819)))
+(let ((@x24633 ((_ quant-inst v_b_S_s$ (b_S_ptr$ b_T_T_u1$ ?x23404)) $x24622)))
+(let (($x24628 (not $x23783)))
+(let ((@x24670 (monotonicity (symm (monotonicity @x25262 (= $x23783 $x10324)) (= $x10324 $x23783)) (= $x15599 $x24628))))
+(let ((@x24708 (unit-resolution (def-axiom (or (not $x24819) $x23783 $x24817)) (mp (hypothesis $x15599) @x24670 $x24628) (unit-resolution @x24633 @x19075 $x24819) $x24817)))
+(let ((@x24998 (unit-resolution (def-axiom (or $x23362 $x10322)) (unit-resolution @x24788 @x24684 @x24576 $x23363) $x10322)))
+(let ((@x24710 (mp @x24998 (symm (monotonicity @x25262 (= $x24209 $x10322)) (= $x10322 $x24209)) $x24209)))
+(let ((@x24724 (unit-resolution (def-axiom (or $x24809 $x24476)) (unit-resolution (def-axiom (or $x24818 $x24210 $x24810)) @x24710 @x24708 $x24810) $x24476)))
+(let ((?x24320 (b_S_idx$ ?x22595 v_b_L_H_p_G_0$ b_T_T_u1$)))
+(let ((?x24321 (b_S_select_o_tm$ ?x10272 ?x24320)))
+(let ((?x24322 (b_S_ts_n_emb$ ?x24321)))
+(let (($x24323 (= ?x24322 ?x22595)))
+(let (($x24328 (b_S_typed$ v_b_S_s$ ?x24320)))
+(let (($x24329 (not $x24328)))
+(let (($x24325 (b_S_ts_n_is_n_volatile$ ?x24321)))
+(let (($x24324 (not $x24323)))
+(let (($x24330 (or $x24324 $x24325 (not (b_S_ts_n_is_n_array_n_elt$ ?x24321)) $x24329)))
+(let (($x24331 (not $x24330)))
+(let (($x25071 (or $x23110 $x24241 $x19670 $x11486 $x24331)))
+(let (($x24332 (or $x24241 $x19670 $x23360 $x24331)))
+(let (($x25072 (or $x23110 $x24332)))
+(let ((@x25070 (monotonicity (trans @x23370 @x23372 (= $x23360 $x11486)) (= $x24332 (or $x24241 $x19670 $x11486 $x24331)))))
+(let ((@x25080 (trans (monotonicity @x25070 (= $x25072 (or $x23110 (or $x24241 $x19670 $x11486 $x24331)))) (rewrite (= (or $x23110 (or $x24241 $x19670 $x11486 $x24331)) $x25071)) (= $x25072 $x25071))))
+(let ((@x25137 (unit-resolution (mp ((_ quant-inst v_b_S_s$ v_b_P_H_arr$ b_T_T_u1$ v_b_P_H_len$ v_b_L_H_p_G_0$) $x25072) @x25080 $x25071) @x17967 @x24576 @x24684 @x24355 (hypothesis $x24330) false)))
+(let ((@x25083 (def-axiom (or $x24330 $x24323))))
+(let ((?x24315 (b_S_ref$ ?x24198)))
+(let ((?x24367 (* (- 1) ?x24315)))
+(let ((?x24368 (+ ?x10079 ?x23278 ?x24367)))
+(let (($x24402 (<= ?x24368 0)))
+(let (($x24365 (= ?x24368 0)))
+(let (($x24384 (or $x21152 $x24365)))
+(let ((@x24394 (monotonicity (rewrite (= (= ?x24315 ?x24174) $x24365)) (= (or $x21152 (= ?x24315 ?x24174)) $x24384))))
+(let ((@x24404 (trans @x24394 (rewrite (= $x24384 $x24384)) (= (or $x21152 (= ?x24315 ?x24174)) $x24384))))
+(let ((@x24403 (mp ((_ quant-inst b_T_T_u1$ (+ ?x10079 ?x23278)) (or $x21152 (= ?x24315 ?x24174))) @x24404 $x24384)))
+(let ((@x25241 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x24365) $x24402)) (unit-resolution @x24403 @x19840 $x24365) $x24402)))
+(let (($x24407 (>= ?x24368 0)))
+(let ((@x25244 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x24365) $x24407)) (unit-resolution @x24403 @x19840 $x24365) $x24407)))
+(let ((?x24925 (+ ?x23278 ?x24419)))
+(let (($x25226 (= ?x24174 ?x24925)))
+(let ((?x25227 (* (- 1) ?x24925)))
+(let ((?x25228 (+ ?x24174 ?x25227)))
+(let (($x25229 (<= ?x25228 0)))
+(let ((?x23747 (* (- 1) ?x21014)))
+(let ((?x23641 (+ ?x10079 ?x23747)))
+(let (($x24296 (<= ?x23641 0)))
+(let ((@x25085 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x10079 ?x21014)) $x24296)) (symm (unit-resolution @x21192 @x19840 $x21186) (= ?x10079 ?x21014)) $x24296)))
+(let ((?x25173 (* (- 1) ?x24419)))
+(let ((?x25174 (+ ?x21014 ?x25173)))
+(let (($x25175 (<= ?x25174 0)))
+(let ((@x25090 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x21014 ?x24419)) $x25175)) (symm (monotonicity @x24520 (= ?x24419 ?x21014)) (= ?x21014 ?x24419)) $x25175)))
+(let ((@x25103 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x25229 (not $x24296) (not $x25175))) @x25090 @x25085 $x25229)))
+(let (($x25230 (>= ?x25228 0)))
+(let (($x23809 (>= ?x23641 0)))
+(let ((@x25106 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x10079 ?x21014)) $x23809)) (symm (unit-resolution @x21192 @x19840 $x21186) (= ?x10079 ?x21014)) $x23809)))
+(let (($x25176 (>= ?x25174 0)))
+(let ((@x25109 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x21014 ?x24419)) $x25176)) (symm (monotonicity @x24520 (= ?x24419 ?x21014)) (= ?x21014 ?x24419)) $x25176)))
+(let ((@x25098 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x25230 (not $x23809) (not $x25176))) @x25109 @x25106 $x25230)))
+(let ((@x25111 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x25226 (not $x25229) (not $x25230))) @x25098 @x25103 (hypothesis (not $x25226)) false)))
+(let ((@x25182 (trans (symm (lemma @x25111 $x25226) (= ?x24925 ?x24174)) ((_ th-lemma arith eq-propagate -1 -1) @x25244 @x25241 (= ?x24174 ?x24315)) (= ?x24925 ?x24315))))
+(let ((@x25183 (trans @x25182 (monotonicity (symm @x24341 (= ?x24198 ?x10320)) (= ?x24315 ?x23404)) (= ?x24925 ?x23404))))
+(let ((?x24930 (b_S_ptr$ b_T_T_u1$ ?x24925)))
+(let ((?x24463 (b_S_idx$ ?x21983 v_b_L_H_p_G_0$ b_T_T_u1$)))
+(let (($x25146 (= ?x24463 ?x24930)))
+(let (($x25152 (or (not (b_S_extent_n_hint$ ?x24463 ?x21983)) (not $x25146))))
+(let (($x25155 (not $x25152)))
+(let (($x25158 (or $x22568 $x25155)))
+(let (($x24469 (not (= ?x24463 (b_S_ptr$ b_T_T_u1$ (+ ?x24419 (* v_b_L_H_p_G_0$ ?x10045)))))))
+(let (($x24471 (not (or (not (b_S_extent_n_hint$ ?x24463 ?x21983)) $x24469))))
+(let (($x25147 (= (= ?x24463 (b_S_ptr$ b_T_T_u1$ (+ ?x24419 (* v_b_L_H_p_G_0$ ?x10045)))) $x25146)))
+(let ((@x25139 (monotonicity (rewrite (= (* v_b_L_H_p_G_0$ ?x10045) ?x23278)) (= (+ ?x24419 (* v_b_L_H_p_G_0$ ?x10045)) (+ ?x24419 ?x23278)))))
+(let ((@x25143 (trans @x25139 (rewrite (= (+ ?x24419 ?x23278) ?x24925)) (= (+ ?x24419 (* v_b_L_H_p_G_0$ ?x10045)) ?x24925))))
+(let ((@x25145 (monotonicity @x25143 (= (b_S_ptr$ b_T_T_u1$ (+ ?x24419 (* v_b_L_H_p_G_0$ ?x10045))) ?x24930))))
+(let ((@x25154 (monotonicity (monotonicity (monotonicity @x25145 $x25147) (= $x24469 (not $x25146))) (= (or (not (b_S_extent_n_hint$ ?x24463 ?x21983)) $x24469) $x25152))))
+(let ((@x25162 (monotonicity (monotonicity @x25154 (= $x24471 $x25155)) (= (or $x22568 $x24471) $x25158))))
+(let ((@x25166 (mp ((_ quant-inst (b_S_ptr$ ?x10076 ?x21014) v_b_L_H_p_G_0$ b_T_T_u1$) (or $x22568 $x24471)) (trans @x25162 (rewrite (= $x25158 $x25158)) (= (or $x22568 $x24471) $x25158)) $x25158)))
+(let ((@x25257 (unit-resolution (def-axiom (or $x25152 $x25146)) (unit-resolution @x25166 @x18183 $x25155) $x25146)))
+(let ((@x25185 (trans (trans (monotonicity @x24532 (= ?x24320 ?x24463)) @x25257 (= ?x24320 ?x24930)) (monotonicity @x25183 (= ?x24930 ?x23225)) (= ?x24320 ?x23225))))
+(let ((@x25217 (symm (monotonicity (trans @x25185 @x25262 (= ?x24320 ?x10320)) (= ?x24321 ?x23101)) (= ?x23101 ?x24321))))
+(let ((@x25274 (monotonicity (monotonicity @x25262 (= ?x24217 ?x23101)) (= ?x24218 (b_S_ts_n_emb$ ?x23101)))))
+(let ((@x25219 (trans @x25274 (monotonicity @x25217 (= (b_S_ts_n_emb$ ?x23101) ?x24322)) (= ?x24218 ?x24322))))
+(let ((@x25221 (trans (trans @x25219 (hypothesis $x24323) (= ?x24218 ?x22595)) @x24530 (= ?x24218 ?x10080))))
+(let ((@x25293 (unit-resolution (hypothesis (not $x23776)) (trans (monotonicity @x25221 (= ?x23727 ?x10082)) @x12043 $x23776) false)))
+(let ((@x23976 (unit-resolution (lemma @x25293 (or $x24324 $x23776)) (unit-resolution @x25083 (lemma @x25137 $x24331) $x24323) $x23776)))
+(let ((?x23443 (b_S_ts_n_emb$ ?x23101)))
+(let ((?x23448 (b_S_typ$ ?x23443)))
+(let ((?x23449 (b_S_kind_n_of$ ?x23448)))
+(let (($x23450 (= ?x23449 b_S_kind_n_primitive$)))
+(let ((@x24651 (monotonicity (monotonicity (symm @x25274 (= ?x23443 ?x24218)) (= ?x23448 ?x23730)) (= ?x23449 ?x23768))))
+(let (($x23598 (b_S_is_n_non_n_primitive$ ?x23448)))
+(let (($x23599 (not $x23598)))
+(let (($x23602 (or $x23450 $x23599)))
+(let (($x23603 (not $x23602)))
+(let (($x24666 (or (not $x19234) $x23603)))
+(let ((@x24631 ((_ quant-inst (b_S_select_o_tm$ ?x10272 ?x10320)) $x24666)))
+(let ((@x24965 (unit-resolution (def-axiom (or $x23602 (not $x23450))) (unit-resolution @x24631 @x19237 $x23603) (not $x23450))))
+(let ((@x24645 (lemma (unit-resolution @x24965 (trans @x24651 (hypothesis $x23769) $x23450) false) (not $x23769))))
+(let ((@x24718 (unit-resolution (def-axiom (or $x24474 $x23770 $x23728 $x23769 $x24475)) @x24645 (unit-resolution (def-axiom (or $x23785 (not $x23776))) @x23976 $x23785) (or $x24474 $x23770 $x23728))))
+(let ((@x24717 (unit-resolution @x24718 @x24724 (unit-resolution (def-axiom (or $x23804 $x23775)) (mp @x24697 @x24701 $x23784) $x23804) @x24696 false)))
+(let ((@x20784 (def-axiom (or $x20013 $x15590 $x15593 $x20007))))
+(let ((@x24650 (unit-resolution (unit-resolution @x20784 @x24345 (or $x20013 $x15593 $x20007)) @x24998 (unit-resolution (def-axiom (or $x20016 $x20010)) @x24502 $x20010) $x20007)))
+(let ((@x20774 (def-axiom (or $x20004 $x19998))))
+(let ((@x20768 (def-axiom (or $x20001 $x15590 $x15599 $x19995))))
+(let ((@x25020 (unit-resolution (unit-resolution @x20768 @x24345 (or $x20001 $x15599 $x19995)) (unit-resolution @x20774 @x24650 $x19998) (or $x15599 $x19995))))
+(let ((@x23989 (hypothesis $x19980)))
+(let ((@x24787 (unit-resolution (def-axiom (or $x19959 $x15590 $x15599 $x19953)) @x24345 (or $x19959 $x15599 $x19953))))
+(let ((@x24655 (unit-resolution @x24787 (unit-resolution (def-axiom (or $x19992 $x10324)) (hypothesis $x19995) $x10324) (hypothesis $x19950) $x19959)))
+(let ((@x20748 (def-axiom (or $x19989 $x19977 $x19983))))
+(let ((@x24904 (unit-resolution @x20748 (unit-resolution (def-axiom (or $x19992 $x19986)) (hypothesis $x19995) $x19986) @x23989 $x19977)))
+(let ((@x20716 (def-axiom (or $x19974 $x19968))))
+(let ((@x24602 (unit-resolution (def-axiom (or $x19971 $x15590 $x15593 $x19965)) @x24345 (or $x19971 $x15593 $x19965))))
+(let ((@x24657 (unit-resolution @x24602 (unit-resolution @x20716 @x24904 $x19968) (unit-resolution (def-axiom (or $x19962 $x19956)) @x24655 $x19962) @x24998 false)))
+(let ((@x24972 (unit-resolution (lemma @x24657 (or $x19992 $x19983 $x19953)) @x23989 (unit-resolution @x25020 (lemma @x24717 $x10324) $x19995) $x19953)))
+(let (($x13277 (<= v_b_P_H_len$ 4294967295)))
+(let (($x13272 (= (+ b_S_max_o_u4$ (* (- 1) v_b_P_H_len$)) (+ 4294967295 (* (- 1) v_b_P_H_len$)))))
+(let ((@x13276 (monotonicity (monotonicity @x6446 $x13272) (= $x11245 (>= (+ 4294967295 (* (- 1) v_b_P_H_len$)) 0)))))
+(let ((@x13281 (trans @x13276 (rewrite (= (>= (+ 4294967295 (* (- 1) v_b_P_H_len$)) 0) $x13277)) (= $x11245 $x13277))))
+(let ((@x13282 (mp (and-elim @x12033 $x11245) @x13281 $x13277)))
+(let ((@x25068 (unit-resolution ((_ th-lemma arith assign-bounds 1 -1) (or $x13353 (not $x13277) $x11486)) @x13282 (or $x13353 $x11486))))
+(let ((@x25023 (unit-resolution (def-axiom (or $x19947 $x15611 $x15614 $x19941)) (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x19670 $x11570)) @x24576 $x11570) (unit-resolution @x25068 @x24684 $x13353) (or $x19947 $x19941))))
+(let ((@x25021 (unit-resolution @x25023 (unit-resolution (def-axiom (or $x19950 $x19944)) @x24972 $x19944) $x19941)))
+(let ((@x20652 (def-axiom (or $x19938 $x19932))))
+(let (($x20596 (>= ?x11582 (- 1))))
+(let ((@x25129 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x19452 $x20596)) (unit-resolution (def-axiom (or $x19938 $x11580)) @x25021 $x11580) $x20596)))
+(let ((@x25134 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x11608 $x11486 (not $x20596))) @x24684 (or $x11608 (not $x20596)))))
+(let ((@x20638 (def-axiom (or $x19935 $x11612 $x19929))))
+(let ((@x25133 (unit-resolution @x20638 (unit-resolution @x25134 @x25129 $x11608) (unit-resolution @x20652 @x25021 $x19932) $x19929)))
+(let ((@x20630 (def-axiom (or $x19926 $x19920))))
+(let ((@x25121 (symm (unit-resolution (def-axiom (or $x19950 $x10338)) @x24972 $x10338) (= v_b_L_H_max_G_2$ v_b_L_H_max_G_3$))))
+(let ((@x25118 (symm (unit-resolution (def-axiom (or $x19950 $x10333)) @x24972 $x10333) (= ?x10327 v_b_L_H_max_G_2$))))
+(let ((@x25171 (monotonicity (unit-resolution (def-axiom (or $x19950 $x10340)) @x24972 $x10340) (= ?x10372 ?x10320))))
+(let ((@x25190 (trans (monotonicity @x25171 (= ?x10373 ?x10327)) @x25118 (= ?x10373 v_b_L_H_max_G_2$))))
+(let (($x24861 (>= (+ v_b_L_H_p_G_0$ (* (- 1) v_b_SL_H_witness_G_1$)) 0)))
+(let ((@x25188 (symm (unit-resolution (def-axiom (or $x19950 $x10340)) @x24972 $x10340) (= v_b_L_H_p_G_0$ v_b_SL_H_witness_G_1$))))
+(let ((@x25200 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= v_b_L_H_p_G_0$ v_b_SL_H_witness_G_1$)) $x24861)) @x25188 $x24861)))
+(let ((@x20614 (def-axiom (or $x19413 $x11647 (not $x10374)))))
+(let ((@x25206 (unit-resolution @x20614 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x11648 (not $x24861) $x11486)) @x25200 @x24684 $x11648) (trans @x25190 @x25121 $x10374) $x19413)))
+(let ((@x20618 (def-axiom (or $x19914 $x19412))))
+(let ((@x20626 (def-axiom (or $x19923 $x19386 $x19917))))
+(let ((@x25210 (unit-resolution @x20626 (unit-resolution @x20618 @x25206 $x19914) (unit-resolution @x20630 @x25133 $x19920) $x19386)))
+(let (($x24182 (>= (+ v_b_L_H_max_G_1$ ?x15891) 0)))
+(let (($x24206 (not $x24182)))
+(let ((?x11631 (* (- 1) v_b_L_H_max_G_3$)))
+(let ((?x20720 (+ v_b_L_H_max_G_1$ ?x11631)))
+(let (($x20721 (<= ?x20720 0)))
+(let (($x24870 (<= (+ ?x10327 ?x11631) 0)))
+(let ((@x25195 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x10327 v_b_L_H_max_G_3$)) $x24870)) (trans @x25118 @x25121 (= ?x10327 v_b_L_H_max_G_3$)) $x24870)))
+(let ((@x20758 (def-axiom (or $x19992 $x19986))))
+(let ((@x25198 (unit-resolution @x20758 (unit-resolution @x25020 (lemma @x24717 $x10324) $x19995) $x19986)))
+(let ((@x25214 (unit-resolution (def-axiom (or $x19974 $x11515)) (unit-resolution @x20748 @x23989 @x25198 $x19977) $x11515)))
+(let ((@x24170 (hypothesis $x20721)))
+(let (($x20603 (not $x15893)))
+(let ((@x24171 (hypothesis $x20603)))
+(let ((@x24211 (lemma ((_ th-lemma arith farkas -1 1 1) (hypothesis $x24182) @x24171 @x24170 false) (or $x24206 $x15893 (not $x20721)))))
+(let ((@x25131 (unit-resolution @x24211 (unit-resolution (def-axiom (or $x19381 $x20603)) @x25210 $x20603) (unit-resolution ((_ th-lemma arith assign-bounds 1 1) (or $x20721 (not $x24870) $x11516)) @x25214 @x25195 $x20721) $x24206)))
+(let ((?x15869 (* (- 1) ?v0!14)))
+(let ((?x23656 (+ v_b_L_H_p_G_0$ ?x15869)))
+(let (($x24586 (>= ?x23656 0)))
+(let ((@x24735 (hypothesis $x20596)))
+(let ((@x24001 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x24586 $x15871 (not $x20596))) (hypothesis $x15876) @x24735 $x24586)))
+(let (($x23657 (<= ?x23656 0)))
+(let (($x24913 (or $x19903 $x19365 $x19366 $x23657 $x24182)))
+(let (($x23648 (<= (+ ?x15634 (* (- 1) v_b_L_H_max_G_1$)) 0)))
+(let (($x23640 (>= (+ ?v0!14 ?x11484) 0)))
+(let (($x23649 (or $x19365 $x19366 $x23640 $x23648)))
+(let (($x24853 (or $x19903 $x23649)))
+(let (($x24880 (= (+ ?x15634 (* (- 1) v_b_L_H_max_G_1$)) (+ (* (- 1) v_b_L_H_max_G_1$) ?x15634))))
+(let ((@x24024 (monotonicity (rewrite $x24880) (= $x23648 (<= (+ (* (- 1) v_b_L_H_max_G_1$) ?x15634) 0)))))
+(let ((@x24867 (trans @x24024 (rewrite (= (<= (+ (* (- 1) v_b_L_H_max_G_1$) ?x15634) 0) $x24182)) (= $x23648 $x24182))))
+(let ((@x24020 (monotonicity (rewrite (= (+ ?v0!14 ?x11484) (+ ?x11484 ?v0!14))) (= $x23640 (>= (+ ?x11484 ?v0!14) 0)))))
+(let ((@x24881 (trans @x24020 (rewrite (= (>= (+ ?x11484 ?v0!14) 0) $x23657)) (= $x23640 $x23657))))
+(let ((@x24935 (monotonicity (monotonicity @x24881 @x24867 (= $x23649 (or $x19365 $x19366 $x23657 $x24182))) (= $x24853 (or $x19903 (or $x19365 $x19366 $x23657 $x24182))))))
+(let ((@x24917 (trans @x24935 (rewrite (= (or $x19903 (or $x19365 $x19366 $x23657 $x24182)) $x24913)) (= $x24853 $x24913))))
+(let ((@x24941 (unit-resolution (mp ((_ quant-inst ?v0!14) $x24853) @x24917 $x24913) @x23333 (unit-resolution (def-axiom (or $x19381 $x15626)) (hypothesis $x19386) $x15626) (unit-resolution (def-axiom (or $x19381 $x15627)) (hypothesis $x19386) $x15627) (hypothesis $x24206) $x23657)))
+(let ((@x24757 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x25035 (not $x23657) (not $x24586))) @x24941 @x24001 (hypothesis (not $x25035)) false)))
+(let ((@x24761 (lemma @x24757 (or $x19381 $x25035 $x19903 $x24182 $x15871 (not $x20596)))))
+(let ((@x25179 (unit-resolution (unit-resolution @x24761 @x24499 (or $x19381 $x25035 $x24182 $x15871 (not $x20596))) @x25131 @x25129 (unit-resolution (def-axiom (or $x19381 $x15876)) @x25210 $x15876) @x25210 $x25035)))
+(let ((@x25060 (monotonicity (symm (hypothesis $x25035) (= ?v0!14 v_b_L_H_p_G_0$)) (= ?x15633 ?x10320))))
+(let ((@x25064 (unit-resolution (hypothesis (not $x25038)) (symm (monotonicity @x25060 (= ?x15634 ?x10327)) $x25038) false)))
+(let ((@x25067 (lemma @x25064 (or (not $x25035) $x25038))))
+(let ((@x25052 ((_ th-lemma arith triangle-eq) (or (not $x25038) $x25041))))
+(let ((@x25298 ((_ th-lemma arith farkas -1 -1 1) (unit-resolution (def-axiom (or $x19381 $x20603)) @x25210 $x20603) @x25195 (unit-resolution @x25052 (unit-resolution @x25067 @x25179 $x25038) $x25041) false)))
+(let ((@x25299 (lemma @x25298 $x19983)))
+(let ((@x24908 (unit-resolution @x25023 (unit-resolution (def-axiom (or $x19980 $x19944)) @x25299 $x19944) $x19941)))
+(let ((@x24947 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x19452 $x20596)) (unit-resolution (def-axiom (or $x19938 $x11580)) @x24908 $x11580) $x20596)))
+(let ((@x24954 (unit-resolution @x20638 (unit-resolution @x25134 @x24947 $x11608) (unit-resolution @x20652 @x24908 $x19932) $x19929)))
+(let (($x20719 (= v_b_L_H_max_G_1$ v_b_L_H_max_G_3$)))
+(let ((@x25006 (mp (unit-resolution (def-axiom (or $x19980 $x10391)) @x25299 $x10391) (symm (commutativity (= $x20719 $x10391)) (= $x10391 $x20719)) $x20719)))
+(let (($x25065 (not $x25035)))
+(let (($x25044 (not $x25038)))
+(let (($x25049 (not $x25041)))
+(let ((@x25051 (lemma ((_ th-lemma arith farkas 1 -1 -1 1) (hypothesis $x25041) @x24170 @x24171 (hypothesis $x11516) false) (or $x25049 (not $x20721) $x15893 $x11515))))
+(let ((@x24891 (unit-resolution @x25051 (unit-resolution (def-axiom (or $x19980 $x11516)) (hypothesis $x19983) $x11516) @x24171 @x24170 $x25049)))
+(let ((@x24597 (unit-resolution @x20638 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1) (or $x11608 $x11486 (not $x20596))) @x24735 @x23420 $x11608) (hypothesis $x19932) $x19929)))
+(let ((@x24892 (symm (unit-resolution (def-axiom (or $x19980 $x10391)) (hypothesis $x19983) $x10391) $x20719)))
+(let ((@x24061 (monotonicity (unit-resolution (def-axiom (or $x19980 $x10392)) (hypothesis $x19983) $x10392) (= ?x10372 ?x10190))))
+(let ((@x24887 (trans (monotonicity @x24061 (= ?x10373 ?x10191)) @x23175 (= ?x10373 v_b_L_H_max_G_1$))))
+(let ((?x11645 (* (- 1) v_b_SL_H_witness_G_1$)))
+(let ((?x20724 (+ v_b_SL_H_witness_G_0$ ?x11645)))
+(let (($x20726 (>= ?x20724 0)))
+(let (($x20723 (= v_b_SL_H_witness_G_0$ v_b_SL_H_witness_G_1$)))
+(let ((@x24982 (mp (unit-resolution (def-axiom (or $x19980 $x10392)) (hypothesis $x19983) $x10392) (symm (commutativity (= $x20723 $x10392)) (= $x10392 $x20723)) $x20723)))
+(let ((@x24888 (lemma ((_ th-lemma arith farkas 1 -1 1) (hypothesis $x20726) (hypothesis $x11647) @x23180 false) (or $x11648 (not $x20726) $x11867))))
+(let ((@x24648 (unit-resolution @x24888 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x20723) $x20726)) @x24982 $x20726) @x23180 $x11648)))
+(let ((@x24798 (unit-resolution @x20618 (unit-resolution @x20614 @x24648 (trans @x24887 @x24892 $x10374) $x19413) $x19914)))
+(let ((@x20602 (def-axiom (or $x19381 $x15876))))
+(let ((@x25013 (unit-resolution @x20602 (unit-resolution @x20626 @x24798 (unit-resolution @x20630 @x24597 $x19920) $x19386) $x15876)))
+(let ((@x25017 (unit-resolution @x24761 @x25013 (unit-resolution @x20626 @x24798 (unit-resolution @x20630 @x24597 $x19920) $x19386) @x23333 (unit-resolution @x24211 @x24171 @x24170 $x24206) (unit-resolution @x25067 (unit-resolution @x25052 @x24891 $x25044) $x25065) @x24735 false)))
+(let ((@x24056 (lemma @x25017 (or $x19980 $x19903 (not $x20596) $x11867 $x15893 (not $x20721) $x19935 $x11486 $x19674))))
+(let ((@x24843 (unit-resolution @x24056 @x24499 @x24415 @x24684 @x24314 (or $x19980 (not $x20596) $x15893 (not $x20721) $x19935))))
+(let ((@x24844 (unit-resolution @x24843 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x20719) $x20721)) @x25006 $x20721) @x25299 @x24947 (unit-resolution @x20652 @x24908 $x19932) $x15893)))
+(let ((@x20605 (def-axiom (or $x19381 $x20603))))
+(let ((@x25302 (monotonicity (unit-resolution (def-axiom (or $x19980 $x10392)) @x25299 $x10392) (= ?x10372 ?x10190))))
+(let ((@x25305 (trans (monotonicity @x25302 (= ?x10373 ?x10191)) @x24314 (= ?x10373 v_b_L_H_max_G_1$))))
+(let ((@x25306 (trans @x25305 (symm (unit-resolution (def-axiom (or $x19980 $x10391)) @x25299 $x10391) $x20719) $x10374)))
+(let ((@x25307 (mp (unit-resolution (def-axiom (or $x19980 $x10392)) @x25299 $x10392) (symm (commutativity (= $x20723 $x10392)) (= $x10392 $x20723)) $x20723)))
+(let ((@x25311 (unit-resolution (unit-resolution @x24888 @x24415 (or $x11648 (not $x20726))) (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x20723) $x20726)) @x25307 $x20726) $x11648)))
+(unit-resolution @x20626 (unit-resolution @x20618 (unit-resolution @x20614 @x25311 @x25306 $x19413) $x19914) (unit-resolution @x20605 @x24844 $x19381) (unit-resolution @x20630 @x24954 $x19920) false))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
+