src/HOL/SMT_Examples/Boogie_Dijkstra.certs2
author haftmann
Sat Jul 05 11:01:53 2014 +0200 (2014-07-05)
changeset 57514 bdc2c6b40bf2
parent 57204 7c36ce8e45f6
permissions -rw-r--r--
prefer ac_simps collections over separate name bindings for add and mult
blanchet@57204
     1
9d6b81d96fb21c8c08e3f1fd649ce37bdafb5f92 3044 0
blanchet@57170
     2
unsat
blanchet@57170
     3
((set-logic AUFLIA)
blanchet@57170
     4
(declare-fun ?v0!19 () B_Vertex$)
blanchet@57170
     5
(declare-fun ?v1!18 () B_Vertex$)
blanchet@57170
     6
(declare-fun ?v0!20 () B_Vertex$)
blanchet@57170
     7
(declare-fun ?v0!17 () B_Vertex$)
blanchet@57170
     8
(declare-fun ?v1!16 () B_Vertex$)
blanchet@57170
     9
(declare-fun ?v0!15 () B_Vertex$)
blanchet@57170
    10
(declare-fun ?v0!14 () B_Vertex$)
blanchet@57170
    11
(declare-fun ?v0!13 () B_Vertex$)
blanchet@57170
    12
(declare-fun ?v0!12 () B_Vertex$)
blanchet@57170
    13
(declare-fun ?v0!11 () B_Vertex$)
blanchet@57170
    14
(declare-fun ?v1!10 () B_Vertex$)
blanchet@57170
    15
(declare-fun ?v1!9 (B_Vertex$) B_Vertex$)
blanchet@57170
    16
(declare-fun ?v0!8 () B_Vertex$)
blanchet@57170
    17
(declare-fun ?v1!7 (B_Vertex$) B_Vertex$)
blanchet@57170
    18
(declare-fun ?v1!6 (B_Vertex$) B_Vertex$)
blanchet@57170
    19
(declare-fun ?v0!5 () B_Vertex$)
blanchet@57170
    20
(declare-fun ?v0!4 () B_Vertex$)
blanchet@57170
    21
(declare-fun ?v1!3 () B_Vertex$)
blanchet@57170
    22
(declare-fun ?v0!2 () B_Vertex$)
blanchet@57170
    23
(declare-fun ?v1!1 () B_Vertex$)
blanchet@57170
    24
(declare-fun ?v0!0 () B_Vertex$)
blanchet@57170
    25
(proof
blanchet@57170
    26
(let ((?x1893 (v_b_SP_G_2$ ?v0!19)))
blanchet@57170
    27
(let ((?x1894 (* (- 1) ?x1893)))
blanchet@57170
    28
(let ((?x1892 (v_b_SP_G_2$ ?v1!18)))
blanchet@57170
    29
(let ((?x1884 (pair$ ?v1!18 ?v0!19)))
blanchet@57170
    30
(let ((?x1885 (b_G$ ?x1884)))
blanchet@57170
    31
(let (($x1896 (>= (+ ?x1885 ?x1892 ?x1894) 0)))
blanchet@57170
    32
(let (($x1888 (<= (+ b_Infinity$ (* (- 1) ?x1885)) 0)))
blanchet@57170
    33
(let (($x1883 (fun_app$ v_b_Visited_G_2$ ?v1!18)))
blanchet@57170
    34
(let (($x2791 (not $x1883)))
blanchet@57170
    35
(let (($x2806 (or $x2791 $x1888 $x1896)))
blanchet@57170
    36
(let (($x2811 (not $x2806)))
blanchet@57170
    37
(let (($x3729 (forall ((?v1 B_Vertex$) )(!(let ((?x1911 (v_b_SP_G_2$ ?v0!20)))
blanchet@57170
    38
(let ((?x1912 (* (- 1) ?x1911)))
blanchet@57170
    39
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
    40
(let (($x2242 (= (+ ?x273 ?x1912 (b_G$ (pair$ ?v1 ?v0!20))) 0)))
blanchet@57170
    41
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
    42
(let (($x300 (not $x291)))
blanchet@57170
    43
(or (>= (+ ?x273 ?x1912) 0) $x300 (not $x2242)))))))) :pattern ( (v_b_SP_G_2$ ?v1) ) :pattern ( (fun_app$ v_b_Visited_G_2$ ?v1) ) :pattern ( (pair$ ?v1 ?v0!20) )))
blanchet@57170
    44
))
blanchet@57170
    45
(let (($x3734 (not $x3729)))
blanchet@57170
    46
(let (($x1914 (<= (+ b_Infinity$ (* (- 1) (v_b_SP_G_2$ ?v0!20))) 0)))
blanchet@57170
    47
(let (($x1909 (= ?v0!20 b_Source$)))
blanchet@57170
    48
(let (($x3720 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(!(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
    49
(let ((?x1263 (* (- 1) ?x303)))
blanchet@57170
    50
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
    51
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
    52
(let (($x1282 (>= (+ ?x155 ?x273 ?x1263) 0)))
blanchet@57170
    53
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
    54
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
    55
(let (($x300 (not $x291)))
blanchet@57170
    56
(or $x300 $x922 $x1282))))))))) :pattern ( (pair$ ?v1 ?v0) )))
blanchet@57170
    57
))
blanchet@57170
    58
(let (($x3725 (not $x3720)))
blanchet@57170
    59
(let (($x3737 (or $x3725 $x1909 $x1914 $x3734)))
blanchet@57170
    60
(let ((?x4393 (fun_app$c v_b_SP_G_1$ ?v0!20)))
blanchet@57170
    61
(let ((?x4418 (* (- 1) ?x4393)))
blanchet@57170
    62
(let ((?x1911 (v_b_SP_G_2$ ?v0!20)))
blanchet@57170
    63
(let ((?x4419 (+ ?x1911 ?x4418)))
blanchet@57170
    64
(let (($x5977 (>= ?x4419 0)))
blanchet@57170
    65
(let (($x4400 (= ?x1911 ?x4393)))
blanchet@57170
    66
(let ((?x4434 (pair$ v_b_v_G_1$ ?v0!20)))
blanchet@57170
    67
(let ((?x4435 (b_G$ ?x4434)))
blanchet@57170
    68
(let ((?x4436 (* (- 1) ?x4435)))
blanchet@57170
    69
(let ((?x3104 (v_b_SP_G_2$ v_b_v_G_1$)))
blanchet@57170
    70
(let ((?x3105 (* (- 1) ?x3104)))
blanchet@57170
    71
(let ((?x4546 (+ ?x1911 ?x3105 ?x4436)))
blanchet@57170
    72
(let (($x4569 (<= ?x4546 0)))
blanchet@57170
    73
(let (($x3740 (not $x3737)))
blanchet@57170
    74
(let ((@x8092 (hypothesis $x3740)))
blanchet@57170
    75
(let ((@x3222 (def-axiom (or $x3737 $x3720))))
blanchet@57170
    76
(let (($x4161 (>= ?x3104 0)))
blanchet@57170
    77
(let (($x3703 (forall ((?v0 B_Vertex$) )(!(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
    78
(>= ?x273 0)) :pattern ( (v_b_SP_G_2$ ?v0) )))
blanchet@57170
    79
))
blanchet@57170
    80
(let (($x3743 (or $x2811 $x3740)))
blanchet@57170
    81
(let (($x3746 (not $x3743)))
blanchet@57170
    82
(let (($x3712 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(!(let (($x1262 (>= (+ (v_b_SP_G_2$ ?v1) (* (- 1) (v_b_SP_G_2$ ?v0))) 0)))
blanchet@57170
    83
(let (($x301 (fun_app$ v_b_Visited_G_2$ ?v0)))
blanchet@57170
    84
(let (($x2768 (not $x301)))
blanchet@57170
    85
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
    86
(or $x291 $x2768 $x1262))))) :pattern ( (v_b_SP_G_2$ ?v1) (v_b_SP_G_2$ ?v0) )))
blanchet@57170
    87
))
blanchet@57170
    88
(let (($x3717 (not $x3712)))
blanchet@57170
    89
(let (($x3749 (or $x3717 $x3746)))
blanchet@57170
    90
(let (($x3752 (not $x3749)))
blanchet@57170
    91
(let (($x1869 (>= (+ (v_b_SP_G_2$ ?v1!16) (* (- 1) (v_b_SP_G_2$ ?v0!17))) 0)))
blanchet@57170
    92
(let (($x1862 (fun_app$ v_b_Visited_G_2$ ?v0!17)))
blanchet@57170
    93
(let (($x2745 (not $x1862)))
blanchet@57170
    94
(let (($x1860 (fun_app$ v_b_Visited_G_2$ ?v1!16)))
blanchet@57170
    95
(let (($x2760 (or $x1860 $x2745 $x1869)))
blanchet@57170
    96
(let (($x2765 (not $x2760)))
blanchet@57170
    97
(let (($x3755 (or $x2765 $x3752)))
blanchet@57170
    98
(let (($x3758 (not $x3755)))
blanchet@57170
    99
(let (($x3708 (not $x3703)))
blanchet@57170
   100
(let (($x3761 (or $x3708 $x3758)))
blanchet@57170
   101
(let (($x3764 (not $x3761)))
blanchet@57170
   102
(let ((?x1846 (v_b_SP_G_2$ ?v0!15)))
blanchet@57170
   103
(let (($x1847 (>= ?x1846 0)))
blanchet@57170
   104
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   105
(let (($x3904 (>= ?x257 0)))
blanchet@57170
   106
(let (($x3556 (forall ((?v0 B_Vertex$) )(!(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   107
(>= ?x174 0)) :pattern ( (fun_app$c v_b_SP_G_1$ ?v0) )))
blanchet@57170
   108
))
blanchet@57170
   109
(let (($x1848 (not $x1847)))
blanchet@57170
   110
(let (($x3767 (or $x1848 $x3764)))
blanchet@57170
   111
(let (($x3770 (not $x3767)))
blanchet@57170
   112
(let ((?x296 (v_b_SP_G_2$ b_Source$)))
blanchet@57170
   113
(let (($x297 (= ?x296 0)))
blanchet@57170
   114
(let (($x773 (not $x297)))
blanchet@57170
   115
(let (($x3773 (or $x773 $x3770)))
blanchet@57170
   116
(let (($x3776 (not $x3773)))
blanchet@57170
   117
(let (($x3779 (or $x773 $x3776)))
blanchet@57170
   118
(let (($x3782 (not $x3779)))
blanchet@57170
   119
(let (($x3695 (forall ((?v0 B_Vertex$) )(!(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   120
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   121
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
   122
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v0)))
blanchet@57170
   123
(let (($x300 (not $x291)))
blanchet@57170
   124
(or $x300 $x278)))))) :pattern ( (fun_app$ v_b_Visited_G_2$ ?v0) ) :pattern ( (v_b_SP_G_2$ ?v0) ) :pattern ( (fun_app$c v_b_SP_G_1$ ?v0) )))
blanchet@57170
   125
))
blanchet@57170
   126
(let (($x3700 (not $x3695)))
blanchet@57170
   127
(let (($x3785 (or $x3700 $x3782)))
blanchet@57170
   128
(let (($x3788 (not $x3785)))
blanchet@57170
   129
(let ((?x1827 (fun_app$c v_b_SP_G_1$ ?v0!14)))
blanchet@57170
   130
(let ((?x1826 (v_b_SP_G_2$ ?v0!14)))
blanchet@57170
   131
(let (($x1828 (= ?x1826 ?x1827)))
blanchet@57170
   132
(let (($x1829 (or (not (fun_app$ v_b_Visited_G_2$ ?v0!14)) $x1828)))
blanchet@57170
   133
(let (($x1830 (not $x1829)))
blanchet@57170
   134
(let (($x3791 (or $x1830 $x3788)))
blanchet@57170
   135
(let (($x3794 (not $x3791)))
blanchet@57170
   136
(let (($x3686 (forall ((?v0 B_Vertex$) )(!(>= (+ (fun_app$c v_b_SP_G_1$ ?v0) (* (- 1) (v_b_SP_G_2$ ?v0))) 0) :pattern ( (fun_app$c v_b_SP_G_1$ ?v0) ) :pattern ( (v_b_SP_G_2$ ?v0) )))
blanchet@57170
   137
))
blanchet@57170
   138
(let (($x3691 (not $x3686)))
blanchet@57170
   139
(let (($x3797 (or $x3691 $x3794)))
blanchet@57170
   140
(let (($x3800 (not $x3797)))
blanchet@57170
   141
(let ((?x1809 (v_b_SP_G_2$ ?v0!13)))
blanchet@57170
   142
(let ((?x1810 (* (- 1) ?x1809)))
blanchet@57170
   143
(let ((?x1808 (fun_app$c v_b_SP_G_1$ ?v0!13)))
blanchet@57170
   144
(let ((?x1811 (+ ?x1808 ?x1810)))
blanchet@57170
   145
(let (($x1812 (>= ?x1811 0)))
blanchet@57170
   146
(let (($x1813 (not $x1812)))
blanchet@57170
   147
(let (($x3803 (or $x1813 $x3800)))
blanchet@57170
   148
(let (($x3806 (not $x3803)))
blanchet@57170
   149
(let (($x3678 (forall ((?v0 B_Vertex$) )(!(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   150
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   151
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
   152
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   153
(let ((?x1173 (* (- 1) ?x257)))
blanchet@57170
   154
(let (($x1175 (<= (+ ?x174 ?x1173 (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0)))) 0)))
blanchet@57170
   155
(let (($x1169 (<= (+ b_Infinity$ (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0)))) 0)))
blanchet@57170
   156
(let (($x2717 (or $x1169 $x1175)))
blanchet@57170
   157
(let (($x2718 (not $x2717)))
blanchet@57170
   158
(or $x2718 $x278)))))))))) :pattern ( (pair$ v_b_v_G_1$ ?v0) ) :pattern ( (fun_app$c v_b_SP_G_1$ ?v0) ) :pattern ( (v_b_SP_G_2$ ?v0) )))
blanchet@57170
   159
))
blanchet@57170
   160
(let (($x3683 (not $x3678)))
blanchet@57170
   161
(let (($x3670 (forall ((?v0 B_Vertex$) )(!(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   162
(let ((?x1186 (* (- 1) ?x273)))
blanchet@57170
   163
(let ((?x268 (b_G$ (pair$ v_b_v_G_1$ ?v0))))
blanchet@57170
   164
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   165
(let (($x1185 (= (+ ?x257 ?x268 ?x1186) 0)))
blanchet@57170
   166
(let (($x1175 (<= (+ (fun_app$c v_b_SP_G_1$ ?v0) (* (- 1) ?x257) (* (- 1) ?x268)) 0)))
blanchet@57170
   167
(let (($x1169 (<= (+ b_Infinity$ (* (- 1) ?x268)) 0)))
blanchet@57170
   168
(or $x1169 $x1175 $x1185)))))))) :pattern ( (pair$ v_b_v_G_1$ ?v0) ) :pattern ( (fun_app$c v_b_SP_G_1$ ?v0) ) :pattern ( (v_b_SP_G_2$ ?v0) )))
blanchet@57170
   169
))
blanchet@57170
   170
(let (($x3675 (not $x3670)))
blanchet@57170
   171
(let ((?x263 (fun_upd$ v_b_Visited_G_1$)))
blanchet@57170
   172
(let ((?x264 (fun_app$b ?x263 v_b_v_G_1$)))
blanchet@57170
   173
(let ((?x265 (fun_app$a ?x264 true)))
blanchet@57170
   174
(let (($x266 (= v_b_Visited_G_2$ ?x265)))
blanchet@57170
   175
(let (($x2935 (not $x266)))
blanchet@57170
   176
(let (($x3660 (forall ((?v0 B_Vertex$) )(!(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   177
(let ((?x1173 (* (- 1) ?x257)))
blanchet@57170
   178
(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   179
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   180
(or $x178 (>= (+ ?x174 ?x1173) 0)))))) :pattern ( (fun_app$ v_b_Visited_G_1$ ?v0) ) :pattern ( (fun_app$c v_b_SP_G_1$ ?v0) )))
blanchet@57170
   181
))
blanchet@57170
   182
(let (($x3665 (not $x3660)))
blanchet@57170
   183
(let ((?x1173 (* (- 1) ?x257)))
blanchet@57170
   184
(let ((?x1212 (+ b_Infinity$ ?x1173)))
blanchet@57170
   185
(let (($x1213 (<= ?x1212 0)))
blanchet@57170
   186
(let (($x255 (fun_app$ v_b_Visited_G_1$ v_b_v_G_1$)))
blanchet@57170
   187
(let ((?x1775 (fun_app$c v_b_SP_G_1$ ?v0!12)))
blanchet@57170
   188
(let ((?x1776 (* (- 1) ?x1775)))
blanchet@57170
   189
(let ((?x1777 (+ b_Infinity$ ?x1776)))
blanchet@57170
   190
(let (($x1778 (<= ?x1777 0)))
blanchet@57170
   191
(let (($x1773 (fun_app$ v_b_Visited_G_1$ ?v0!12)))
blanchet@57170
   192
(let (($x3809 (or $x1773 $x1778 $x255 $x1213 $x3665 $x2935 $x3675 $x3683 $x3806)))
blanchet@57170
   193
(let (($x3812 (not $x3809)))
blanchet@57170
   194
(let ((?x245 (fun_app$c v_b_SP_G_3$ b_Source$)))
blanchet@57170
   195
(let (($x246 (= ?x245 0)))
blanchet@57170
   196
(let (($x3622 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(!(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
   197
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   198
(let (($x1140 (>= (+ ?x155 ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ ?v0))) 0)))
blanchet@57170
   199
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
   200
(let (($x1099 (<= (+ b_Infinity$ (* (- 1) ?x230)) 0)))
blanchet@57170
   201
(or $x1099 $x922 $x1140)))))) :pattern ( (pair$ ?v1 ?v0) )))
blanchet@57170
   202
))
blanchet@57170
   203
(let (($x3627 (not $x3622)))
blanchet@57170
   204
(let (($x3630 (or $x3627 $x246)))
blanchet@57170
   205
(let (($x3633 (not $x3630)))
blanchet@57170
   206
(let ((?x1734 (fun_app$c v_b_SP_G_3$ ?v0!11)))
blanchet@57170
   207
(let ((?x1735 (* (- 1) ?x1734)))
blanchet@57170
   208
(let ((?x1726 (pair$ ?v1!10 ?v0!11)))
blanchet@57170
   209
(let ((?x1727 (b_G$ ?x1726)))
blanchet@57170
   210
(let ((?x1721 (fun_app$c v_b_SP_G_3$ ?v1!10)))
blanchet@57170
   211
(let ((?x2206 (+ ?x1721 ?x1727 ?x1735)))
blanchet@57170
   212
(let (($x2209 (>= ?x2206 0)))
blanchet@57170
   213
(let (($x1730 (<= (+ b_Infinity$ (* (- 1) ?x1727)) 0)))
blanchet@57170
   214
(let (($x1724 (<= (+ b_Infinity$ (* (- 1) ?x1721)) 0)))
blanchet@57170
   215
(let (($x2645 (or $x1724 $x1730 $x2209)))
blanchet@57170
   216
(let (($x2650 (not $x2645)))
blanchet@57170
   217
(let (($x3636 (or $x2650 $x3633)))
blanchet@57170
   218
(let (($x3639 (not $x3636)))
blanchet@57170
   219
(let (($x3614 (forall ((?v0 B_Vertex$) )(!(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
   220
(let ((?x2191 (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!9 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!9 ?v0) ?v0))))))
blanchet@57170
   221
(let (($x2192 (= ?x2191 0)))
blanchet@57170
   222
(let (($x2176 (<= (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!9 ?v0)))) 0)))
blanchet@57170
   223
(let (($x2617 (not (or $x2176 (not $x2192)))))
blanchet@57170
   224
(let (($x1099 (<= (+ b_Infinity$ (* (- 1) ?x230)) 0)))
blanchet@57170
   225
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   226
(or $x127 $x1099 $x2617)))))))) :pattern ( (fun_app$c v_b_SP_G_3$ ?v0) )))
blanchet@57170
   227
))
blanchet@57170
   228
(let (($x3619 (not $x3614)))
blanchet@57170
   229
(let (($x3642 (or $x3619 $x3639)))
blanchet@57170
   230
(let (($x3645 (not $x3642)))
blanchet@57170
   231
(let (($x3600 (forall ((?v1 B_Vertex$) )(!(let ((?x1661 (fun_app$c v_b_SP_G_3$ ?v0!8)))
blanchet@57170
   232
(let ((?x1662 (* (- 1) ?x1661)))
blanchet@57170
   233
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
   234
(let (($x2148 (= (+ ?x230 ?x1662 (b_G$ (pair$ ?v1 ?v0!8))) 0)))
blanchet@57170
   235
(or (>= (+ ?x230 ?x1662) 0) (not $x2148)))))) :pattern ( (fun_app$c v_b_SP_G_3$ ?v1) ) :pattern ( (pair$ ?v1 ?v0!8) )))
blanchet@57170
   236
))
blanchet@57170
   237
(let (($x3605 (not $x3600)))
blanchet@57170
   238
(let (($x1664 (<= (+ b_Infinity$ (* (- 1) (fun_app$c v_b_SP_G_3$ ?v0!8))) 0)))
blanchet@57170
   239
(let (($x1659 (= ?v0!8 b_Source$)))
blanchet@57170
   240
(let (($x3608 (or $x1659 $x1664 $x3605)))
blanchet@57170
   241
(let (($x3611 (not $x3608)))
blanchet@57170
   242
(let (($x3648 (or $x3611 $x3645)))
blanchet@57170
   243
(let (($x3651 (not $x3648)))
blanchet@57170
   244
(let (($x220 (= v_b_oldSP_G_1$ v_b_oldSP_G_0$)))
blanchet@57170
   245
(let (($x2709 (not $x220)))
blanchet@57170
   246
(let (($x217 (= v_b_SP_G_3$ v_b_SP_G_1$)))
blanchet@57170
   247
(let (($x2708 (not $x217)))
blanchet@57170
   248
(let (($x215 (= v_b_v_G_2$ v_b_v_G_0$)))
blanchet@57170
   249
(let (($x2707 (not $x215)))
blanchet@57170
   250
(let (($x212 (= v_b_Visited_G_3$ v_b_Visited_G_1$)))
blanchet@57170
   251
(let (($x2706 (not $x212)))
blanchet@57170
   252
(let (($x3590 (forall ((?v0 B_Vertex$) )(!(let (($x1002 (<= (+ b_Infinity$ (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   253
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   254
(or $x178 $x1002))) :pattern ( (fun_app$ v_b_Visited_G_1$ ?v0) ) :pattern ( (fun_app$c v_b_SP_G_1$ ?v0) )))
blanchet@57170
   255
))
blanchet@57170
   256
(let (($x3595 (not $x3590)))
blanchet@57170
   257
(let (($x3654 (or $x3595 $x2706 $x2707 $x2708 $x2709 $x3651)))
blanchet@57170
   258
(let (($x3657 (not $x3654)))
blanchet@57170
   259
(let (($x3815 (or $x3657 $x3812)))
blanchet@57170
   260
(let (($x3818 (not $x3815)))
blanchet@57170
   261
(let (($x3581 (forall ((?v0 B_Vertex$) )(!(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   262
(let ((?x2128 (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ (?v1!7 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!7 ?v0) ?v0))))))
blanchet@57170
   263
(let (($x2129 (= ?x2128 0)))
blanchet@57170
   264
(let (($x2113 (<= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ (?v1!7 ?v0)))) 0)))
blanchet@57170
   265
(let (($x2551 (not (or $x2113 (not (fun_app$ v_b_Visited_G_1$ (?v1!7 ?v0))) (not $x2129)))))
blanchet@57170
   266
(let (($x1002 (<= (+ b_Infinity$ (* (- 1) ?x174)) 0)))
blanchet@57170
   267
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   268
(or $x127 $x1002 $x2551)))))))) :pattern ( (fun_app$c v_b_SP_G_1$ ?v0) )))
blanchet@57170
   269
))
blanchet@57170
   270
(let (($x3586 (not $x3581)))
blanchet@57170
   271
(let (($x3573 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(!(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   272
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   273
(let (($x990 (>= (+ ?x155 ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   274
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
   275
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   276
(let (($x179 (not $x178)))
blanchet@57170
   277
(or $x179 $x922 $x990))))))) :pattern ( (pair$ ?v1 ?v0) )))
blanchet@57170
   278
))
blanchet@57170
   279
(let (($x3578 (not $x3573)))
blanchet@57170
   280
(let (($x3565 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(!(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   281
(let (($x1015 (>= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   282
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   283
(or $x178 (not (fun_app$ v_b_Visited_G_1$ ?v0)) $x1015)))) :pattern ( (fun_app$ v_b_Visited_G_1$ ?v1) (fun_app$ v_b_Visited_G_1$ ?v0) )))
blanchet@57170
   284
))
blanchet@57170
   285
(let (($x3570 (not $x3565)))
blanchet@57170
   286
(let (($x3561 (not $x3556)))
blanchet@57170
   287
(let ((?x172 (fun_app$c v_b_SP_G_1$ b_Source$)))
blanchet@57170
   288
(let (($x173 (= ?x172 0)))
blanchet@57170
   289
(let (($x2952 (not $x173)))
blanchet@57170
   290
(let (($x3547 (forall ((?v0 B_Vertex$) )(!(let ((?x128 (v_b_SP_G_0$ ?v0)))
blanchet@57170
   291
(let ((?x2090 (+ ?x128 (* (- 1) (v_b_SP_G_0$ (?v1!6 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!6 ?v0) ?v0))))))
blanchet@57170
   292
(let (($x2091 (= ?x2090 0)))
blanchet@57170
   293
(let (($x2075 (<= (+ ?x128 (* (- 1) (v_b_SP_G_0$ (?v1!6 ?v0)))) 0)))
blanchet@57170
   294
(let (($x2478 (not (or $x2075 (not (v_b_Visited_G_0$ (?v1!6 ?v0))) (not $x2091)))))
blanchet@57170
   295
(let (($x947 (<= (+ b_Infinity$ (* (- 1) ?x128)) 0)))
blanchet@57170
   296
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   297
(or $x127 $x947 $x2478)))))))) :pattern ( (v_b_SP_G_0$ ?v0) )))
blanchet@57170
   298
))
blanchet@57170
   299
(let (($x3552 (not $x3547)))
blanchet@57170
   300
(let (($x3821 (or $x3552 $x2952 $x3561 $x3570 $x3578 $x3586 $x3818)))
blanchet@57170
   301
(let (($x3824 (not $x3821)))
blanchet@57170
   302
(let (($x3533 (forall ((?v1 B_Vertex$) )(!(let ((?x1540 (v_b_SP_G_0$ ?v0!5)))
blanchet@57170
   303
(let ((?x1541 (* (- 1) ?x1540)))
blanchet@57170
   304
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
   305
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   306
(let (($x137 (not $x136)))
blanchet@57170
   307
(or (>= (+ ?x128 ?x1541) 0) $x137 (not (= (+ ?x128 ?x1541 (b_G$ (pair$ ?v1 ?v0!5))) 0)))))))) :pattern ( (v_b_SP_G_0$ ?v1) ) :pattern ( (v_b_Visited_G_0$ ?v1) ) :pattern ( (pair$ ?v1 ?v0!5) )))
blanchet@57170
   308
))
blanchet@57170
   309
(let (($x3538 (not $x3533)))
blanchet@57170
   310
(let ((?x1540 (v_b_SP_G_0$ ?v0!5)))
blanchet@57170
   311
(let ((?x1541 (* (- 1) ?x1540)))
blanchet@57170
   312
(let ((?x1542 (+ b_Infinity$ ?x1541)))
blanchet@57170
   313
(let (($x1543 (<= ?x1542 0)))
blanchet@57170
   314
(let (($x1538 (= ?v0!5 b_Source$)))
blanchet@57170
   315
(let (($x3541 (or $x1538 $x1543 $x3538)))
blanchet@57170
   316
(let (($x1539 (not $x1538)))
blanchet@57170
   317
(let ((@x6246 (unit-resolution (def-axiom (or $x3541 $x1539)) (hypothesis (not $x3541)) $x1539)))
blanchet@57170
   318
(let (($x5625 (= b_Infinity$ ?x1540)))
blanchet@57170
   319
(let (($x6457 (not $x5625)))
blanchet@57170
   320
(let (($x1544 (not $x1543)))
blanchet@57170
   321
(let ((@x6514 (unit-resolution (def-axiom (or $x3541 $x1544)) (hypothesis (not $x3541)) $x1544)))
blanchet@57170
   322
(let ((@x5778 (symm (commutativity (= $x5625 (= ?x1540 b_Infinity$))) (= (= ?x1540 b_Infinity$) $x5625))))
blanchet@57170
   323
(let (($x5616 (= ?x1540 b_Infinity$)))
blanchet@57170
   324
(let (($x3493 (forall ((?v0 B_Vertex$) )(!(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   325
(or $x127 (= (v_b_SP_G_0$ ?v0) b_Infinity$))) :pattern ( (v_b_SP_G_0$ ?v0) )))
blanchet@57170
   326
))
blanchet@57170
   327
(let (($x360 (forall ((?v0 B_Vertex$) )(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   328
(or $x127 (= (v_b_SP_G_0$ ?v0) b_Infinity$))))
blanchet@57170
   329
))
blanchet@57170
   330
(let (($x127 (= ?0 b_Source$)))
blanchet@57170
   331
(let (($x357 (or $x127 (= (v_b_SP_G_0$ ?0) b_Infinity$))))
blanchet@57170
   332
(let (($x138 (forall ((?v0 B_Vertex$) )(let (($x136 (v_b_Visited_G_0$ ?v0)))
blanchet@57170
   333
(not $x136)))
blanchet@57170
   334
))
blanchet@57170
   335
(let (($x354 (forall ((?v0 B_Vertex$) )(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   336
(let (($x132 (not $x127)))
blanchet@57170
   337
(or $x132 (= (v_b_SP_G_0$ ?v0) 0)))))
blanchet@57170
   338
))
blanchet@57170
   339
(let (($x890 (and $x354 $x360 $x138)))
blanchet@57170
   340
(let (($x1329 (forall ((?v0 B_Vertex$) )(let (($x1323 (exists ((?v1 B_Vertex$) )(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   341
(let ((?x1263 (* (- 1) ?x303)))
blanchet@57170
   342
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   343
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   344
(let (($x1306 (= (+ ?x155 ?x273 ?x1263) 0)))
blanchet@57170
   345
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   346
(let (($x1262 (>= (+ ?x273 ?x1263) 0)))
blanchet@57170
   347
(let (($x1309 (not $x1262)))
blanchet@57170
   348
(and $x1309 $x291 $x1306))))))))))
blanchet@57170
   349
))
blanchet@57170
   350
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   351
(let (($x132 (not $x127)))
blanchet@57170
   352
(let (($x1300 (and $x132 (not (<= (+ b_Infinity$ (* (- 1) (v_b_SP_G_2$ ?v0))) 0)))))
blanchet@57170
   353
(or (not $x1300) $x1323))))))
blanchet@57170
   354
))
blanchet@57170
   355
(let (($x1289 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   356
(let ((?x1263 (* (- 1) ?x303)))
blanchet@57170
   357
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   358
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   359
(let (($x1282 (>= (+ ?x155 ?x273 ?x1263) 0)))
blanchet@57170
   360
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
   361
(let (($x923 (not $x922)))
blanchet@57170
   362
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   363
(let (($x1276 (and $x291 $x923)))
blanchet@57170
   364
(let (($x1279 (not $x1276)))
blanchet@57170
   365
(or $x1279 $x1282))))))))))))
blanchet@57170
   366
))
blanchet@57170
   367
(let (($x1292 (not $x1289)))
blanchet@57170
   368
(let (($x1332 (or $x1292 $x1329)))
blanchet@57170
   369
(let (($x1335 (and $x1289 $x1332)))
blanchet@57170
   370
(let (($x1270 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let (($x1262 (>= (+ (v_b_SP_G_2$ ?v1) (* (- 1) (v_b_SP_G_2$ ?v0))) 0)))
blanchet@57170
   371
(let (($x301 (fun_app$ v_b_Visited_G_2$ ?v0)))
blanchet@57170
   372
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   373
(let (($x300 (not $x291)))
blanchet@57170
   374
(let (($x302 (and $x300 $x301)))
blanchet@57170
   375
(let (($x664 (not $x302)))
blanchet@57170
   376
(or $x664 $x1262))))))))
blanchet@57170
   377
))
blanchet@57170
   378
(let (($x1273 (not $x1270)))
blanchet@57170
   379
(let (($x1338 (or $x1273 $x1335)))
blanchet@57170
   380
(let (($x1341 (and $x1270 $x1338)))
blanchet@57170
   381
(let (($x1256 (forall ((?v0 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   382
(>= ?x273 0)))
blanchet@57170
   383
))
blanchet@57170
   384
(let (($x1259 (not $x1256)))
blanchet@57170
   385
(let (($x1344 (or $x1259 $x1341)))
blanchet@57170
   386
(let (($x1347 (and $x1256 $x1344)))
blanchet@57170
   387
(let (($x1350 (or $x773 $x1347)))
blanchet@57170
   388
(let (($x1353 (and $x297 $x1350)))
blanchet@57170
   389
(let (($x652 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   390
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   391
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
   392
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v0)))
blanchet@57170
   393
(let (($x300 (not $x291)))
blanchet@57170
   394
(or $x300 $x278)))))))
blanchet@57170
   395
))
blanchet@57170
   396
(let (($x785 (not $x652)))
blanchet@57170
   397
(let (($x1356 (or $x785 $x1353)))
blanchet@57170
   398
(let (($x1359 (and $x652 $x1356)))
blanchet@57170
   399
(let (($x1247 (forall ((?v0 B_Vertex$) )(>= (+ (fun_app$c v_b_SP_G_1$ ?v0) (* (- 1) (v_b_SP_G_2$ ?v0))) 0))
blanchet@57170
   400
))
blanchet@57170
   401
(let (($x1250 (not $x1247)))
blanchet@57170
   402
(let (($x1362 (or $x1250 $x1359)))
blanchet@57170
   403
(let (($x1365 (and $x1247 $x1362)))
blanchet@57170
   404
(let (($x1199 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   405
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   406
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
   407
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   408
(let ((?x1173 (* (- 1) ?x257)))
blanchet@57170
   409
(let (($x1175 (<= (+ ?x174 ?x1173 (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0)))) 0)))
blanchet@57170
   410
(let (($x1169 (<= (+ b_Infinity$ (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0)))) 0)))
blanchet@57170
   411
(let (($x1179 (and (not $x1169) (not $x1175))))
blanchet@57170
   412
(or $x1179 $x278))))))))))
blanchet@57170
   413
))
blanchet@57170
   414
(let (($x1193 (forall ((?v0 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   415
(let ((?x1186 (* (- 1) ?x273)))
blanchet@57170
   416
(let ((?x268 (b_G$ (pair$ v_b_v_G_1$ ?v0))))
blanchet@57170
   417
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   418
(let (($x1185 (= (+ ?x257 ?x268 ?x1186) 0)))
blanchet@57170
   419
(let (($x1175 (<= (+ (fun_app$c v_b_SP_G_1$ ?v0) (* (- 1) ?x257) (* (- 1) ?x268)) 0)))
blanchet@57170
   420
(let (($x1179 (and (not (<= (+ b_Infinity$ (* (- 1) ?x268)) 0)) (not $x1175))))
blanchet@57170
   421
(let (($x1182 (not $x1179)))
blanchet@57170
   422
(or $x1182 $x1185))))))))))
blanchet@57170
   423
))
blanchet@57170
   424
(let (($x1209 (forall ((?v0 B_Vertex$) )(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   425
(let ((?x1173 (* (- 1) ?x257)))
blanchet@57170
   426
(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   427
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   428
(or $x178 (>= (+ ?x174 ?x1173) 0)))))))
blanchet@57170
   429
))
blanchet@57170
   430
(let (($x1214 (not $x1213)))
blanchet@57170
   431
(let (($x256 (not $x255)))
blanchet@57170
   432
(let (($x1080 (exists ((?v0 B_Vertex$) )(let (($x1002 (<= (+ b_Infinity$ (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   433
(let (($x1003 (not $x1002)))
blanchet@57170
   434
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   435
(let (($x179 (not $x178)))
blanchet@57170
   436
(and $x179 $x1003))))))
blanchet@57170
   437
))
blanchet@57170
   438
(let (($x1235 (and $x1080 $x256 $x1214 $x1209 $x266 $x1193 $x1199)))
blanchet@57170
   439
(let (($x1240 (not $x1235)))
blanchet@57170
   440
(let (($x1368 (or $x1240 $x1365)))
blanchet@57170
   441
(let (($x1146 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
   442
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   443
(let (($x1140 (>= (+ ?x155 ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ ?v0))) 0)))
blanchet@57170
   444
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
   445
(let (($x923 (not $x922)))
blanchet@57170
   446
(let (($x1099 (<= (+ b_Infinity$ (* (- 1) ?x230)) 0)))
blanchet@57170
   447
(let (($x1100 (not $x1099)))
blanchet@57170
   448
(let (($x1134 (and $x1100 $x923)))
blanchet@57170
   449
(let (($x1137 (not $x1134)))
blanchet@57170
   450
(or $x1137 $x1140)))))))))))
blanchet@57170
   451
))
blanchet@57170
   452
(let (($x1149 (not $x1146)))
blanchet@57170
   453
(let (($x1152 (or $x1149 $x246)))
blanchet@57170
   454
(let (($x1155 (and $x1146 $x1152)))
blanchet@57170
   455
(let (($x1128 (forall ((?v0 B_Vertex$) )(let (($x1122 (exists ((?v1 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
   456
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   457
(and (not (>= (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ ?v0))) 0)) (= (+ ?x155 ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ ?v0))) 0)))))
blanchet@57170
   458
))
blanchet@57170
   459
(let (($x1099 (<= (+ b_Infinity$ (* (- 1) (fun_app$c v_b_SP_G_3$ ?v0))) 0)))
blanchet@57170
   460
(let (($x1100 (not $x1099)))
blanchet@57170
   461
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   462
(let (($x132 (not $x127)))
blanchet@57170
   463
(let (($x1103 (and $x132 $x1100)))
blanchet@57170
   464
(let (($x1106 (not $x1103)))
blanchet@57170
   465
(or $x1106 $x1122)))))))))
blanchet@57170
   466
))
blanchet@57170
   467
(let (($x1131 (not $x1128)))
blanchet@57170
   468
(let (($x1158 (or $x1131 $x1155)))
blanchet@57170
   469
(let (($x1161 (and $x1128 $x1158)))
blanchet@57170
   470
(let (($x1083 (not $x1080)))
blanchet@57170
   471
(let (($x1089 (and $x1083 $x212 $x215 $x217 $x220)))
blanchet@57170
   472
(let (($x1094 (not $x1089)))
blanchet@57170
   473
(let (($x1164 (or $x1094 $x1161)))
blanchet@57170
   474
(let (($x1371 (and $x1164 $x1368)))
blanchet@57170
   475
(let (($x1037 (forall ((?v0 B_Vertex$) )(let (($x1031 (exists ((?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   476
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   477
(let (($x1012 (= (+ ?x155 ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   478
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   479
(let (($x1015 (>= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   480
(let (($x1017 (not $x1015)))
blanchet@57170
   481
(and $x1017 $x178 $x1012))))))))
blanchet@57170
   482
))
blanchet@57170
   483
(let (($x1002 (<= (+ b_Infinity$ (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   484
(let (($x1003 (not $x1002)))
blanchet@57170
   485
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   486
(let (($x132 (not $x127)))
blanchet@57170
   487
(let (($x1006 (and $x132 $x1003)))
blanchet@57170
   488
(let (($x1009 (not $x1006)))
blanchet@57170
   489
(or $x1009 $x1031)))))))))
blanchet@57170
   490
))
blanchet@57170
   491
(let (($x997 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   492
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   493
(let (($x990 (>= (+ ?x155 ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   494
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
   495
(let (($x923 (not $x922)))
blanchet@57170
   496
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   497
(let (($x983 (and $x178 $x923)))
blanchet@57170
   498
(let (($x986 (not $x983)))
blanchet@57170
   499
(or $x986 $x990))))))))))
blanchet@57170
   500
))
blanchet@57170
   501
(let (($x1045 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   502
(let (($x1015 (>= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
   503
(let (($x180 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   504
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   505
(let (($x179 (not $x178)))
blanchet@57170
   506
(let (($x181 (and $x179 $x180)))
blanchet@57170
   507
(let (($x403 (not $x181)))
blanchet@57170
   508
(or $x403 $x1015)))))))))
blanchet@57170
   509
))
blanchet@57170
   510
(let (($x1051 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   511
(>= ?x174 0)))
blanchet@57170
   512
))
blanchet@57170
   513
(let (($x980 (forall ((?v0 B_Vertex$) )(let (($x974 (exists ((?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   514
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
   515
(let (($x957 (= (+ ?x128 (* (- 1) (v_b_SP_G_0$ ?v0)) ?x155) 0)))
blanchet@57170
   516
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   517
(let (($x907 (>= (+ ?x128 (* (- 1) (v_b_SP_G_0$ ?v0))) 0)))
blanchet@57170
   518
(let (($x960 (not $x907)))
blanchet@57170
   519
(and $x960 $x136 $x957))))))))
blanchet@57170
   520
))
blanchet@57170
   521
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   522
(let (($x132 (not $x127)))
blanchet@57170
   523
(let (($x951 (and $x132 (not (<= (+ b_Infinity$ (* (- 1) (v_b_SP_G_0$ ?v0))) 0)))))
blanchet@57170
   524
(let (($x954 (not $x951)))
blanchet@57170
   525
(or $x954 $x974)))))))
blanchet@57170
   526
))
blanchet@57170
   527
(let (($x1069 (and $x980 $x173 $x1051 $x1045 $x997 $x1037)))
blanchet@57170
   528
(let (($x1074 (not $x1069)))
blanchet@57170
   529
(let (($x1374 (or $x1074 $x1371)))
blanchet@57170
   530
(let (($x1377 (and $x980 $x1374)))
blanchet@57170
   531
(let (($x939 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   532
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
   533
(let (($x933 (>= (+ ?x128 (* (- 1) (v_b_SP_G_0$ ?v0)) ?x155) 0)))
blanchet@57170
   534
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
   535
(let (($x923 (not $x922)))
blanchet@57170
   536
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   537
(let (($x926 (and $x136 $x923)))
blanchet@57170
   538
(let (($x929 (not $x926)))
blanchet@57170
   539
(or $x929 $x933))))))))))
blanchet@57170
   540
))
blanchet@57170
   541
(let (($x942 (not $x939)))
blanchet@57170
   542
(let (($x1380 (or $x942 $x1377)))
blanchet@57170
   543
(let (($x1383 (and $x939 $x1380)))
blanchet@57170
   544
(let (($x914 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let (($x907 (>= (+ (v_b_SP_G_0$ ?v1) (* (- 1) (v_b_SP_G_0$ ?v0))) 0)))
blanchet@57170
   545
(let (($x148 (v_b_Visited_G_0$ ?v0)))
blanchet@57170
   546
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   547
(let (($x137 (not $x136)))
blanchet@57170
   548
(let (($x149 (and $x137 $x148)))
blanchet@57170
   549
(let (($x382 (not $x149)))
blanchet@57170
   550
(or $x382 $x907))))))))
blanchet@57170
   551
))
blanchet@57170
   552
(let (($x917 (not $x914)))
blanchet@57170
   553
(let (($x1386 (or $x917 $x1383)))
blanchet@57170
   554
(let (($x1389 (and $x914 $x1386)))
blanchet@57170
   555
(let (($x899 (forall ((?v0 B_Vertex$) )(let ((?x128 (v_b_SP_G_0$ ?v0)))
blanchet@57170
   556
(>= ?x128 0)))
blanchet@57170
   557
))
blanchet@57170
   558
(let (($x902 (not $x899)))
blanchet@57170
   559
(let (($x1392 (or $x902 $x1389)))
blanchet@57170
   560
(let (($x1395 (and $x899 $x1392)))
blanchet@57170
   561
(let ((?x144 (v_b_SP_G_0$ b_Source$)))
blanchet@57170
   562
(let (($x145 (= ?x144 0)))
blanchet@57170
   563
(let (($x869 (not $x145)))
blanchet@57170
   564
(let (($x1398 (or $x869 $x1395)))
blanchet@57170
   565
(let (($x1401 (and $x145 $x1398)))
blanchet@57170
   566
(let (($x1407 (not (or (not $x890) $x1401))))
blanchet@57170
   567
(let (($x320 (forall ((?v0 B_Vertex$) )(let (($x318 (exists ((?v1 B_Vertex$) )(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   568
(let (($x316 (and $x291 (= (v_b_SP_G_2$ ?v0) (+ (v_b_SP_G_2$ ?v1) (b_G$ (pair$ ?v1 ?v0)))))))
blanchet@57170
   569
(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   570
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   571
(let (($x314 (< ?x273 ?x303)))
blanchet@57170
   572
(and $x314 $x316)))))))
blanchet@57170
   573
))
blanchet@57170
   574
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   575
(let (($x132 (not $x127)))
blanchet@57170
   576
(let (($x313 (and $x132 (< (v_b_SP_G_2$ ?v0) b_Infinity$))))
blanchet@57170
   577
(=> $x313 $x318))))))
blanchet@57170
   578
))
blanchet@57170
   579
(let (($x321 (and $x320 false)))
blanchet@57170
   580
(let (($x322 (=> $x321 true)))
blanchet@57170
   581
(let (($x323 (and $x320 $x322)))
blanchet@57170
   582
(let (($x311 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   583
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   584
(let ((?x308 (+ ?x273 ?x155)))
blanchet@57170
   585
(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   586
(let (($x156 (< ?x155 b_Infinity$)))
blanchet@57170
   587
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   588
(let (($x307 (and $x291 $x156)))
blanchet@57170
   589
(=> $x307 (<= ?x303 ?x308))))))))))
blanchet@57170
   590
))
blanchet@57170
   591
(let (($x324 (=> $x311 $x323)))
blanchet@57170
   592
(let (($x306 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   593
(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   594
(let (($x304 (<= ?x303 ?x273)))
blanchet@57170
   595
(let (($x301 (fun_app$ v_b_Visited_G_2$ ?v0)))
blanchet@57170
   596
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   597
(let (($x300 (not $x291)))
blanchet@57170
   598
(let (($x302 (and $x300 $x301)))
blanchet@57170
   599
(=> $x302 $x304)))))))))
blanchet@57170
   600
))
blanchet@57170
   601
(let (($x326 (=> $x306 (and $x311 $x324))))
blanchet@57170
   602
(let (($x299 (forall ((?v0 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   603
(<= 0 ?x273)))
blanchet@57170
   604
))
blanchet@57170
   605
(let (($x328 (=> $x299 (and $x306 $x326))))
blanchet@57170
   606
(let (($x330 (=> $x297 (and $x299 $x328))))
blanchet@57170
   607
(let (($x293 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   608
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   609
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
   610
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v0)))
blanchet@57170
   611
(=> $x291 $x278))))))
blanchet@57170
   612
))
blanchet@57170
   613
(let (($x295 (and $x293 (and true true))))
blanchet@57170
   614
(let (($x332 (=> $x295 (and $x297 $x330))))
blanchet@57170
   615
(let (($x290 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   616
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   617
(<= ?x273 ?x174))))
blanchet@57170
   618
))
blanchet@57170
   619
(let (($x334 (=> $x290 (and $x293 $x332))))
blanchet@57170
   620
(let (($x280 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   621
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   622
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
   623
(let ((?x268 (b_G$ (pair$ v_b_v_G_1$ ?v0))))
blanchet@57170
   624
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   625
(let ((?x270 (+ ?x257 ?x268)))
blanchet@57170
   626
(let (($x272 (and (< ?x268 b_Infinity$) (< ?x270 ?x174))))
blanchet@57170
   627
(let (($x277 (not $x272)))
blanchet@57170
   628
(=> $x277 $x278))))))))))
blanchet@57170
   629
))
blanchet@57170
   630
(let (($x276 (forall ((?v0 B_Vertex$) )(let ((?x268 (b_G$ (pair$ v_b_v_G_1$ ?v0))))
blanchet@57170
   631
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   632
(let ((?x270 (+ ?x257 ?x268)))
blanchet@57170
   633
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   634
(let (($x274 (= ?x273 ?x270)))
blanchet@57170
   635
(let (($x272 (and (< ?x268 b_Infinity$) (< ?x270 (fun_app$c v_b_SP_G_1$ ?v0)))))
blanchet@57170
   636
(=> $x272 $x274))))))))
blanchet@57170
   637
))
blanchet@57170
   638
(let (($x261 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   639
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   640
(let (($x259 (<= ?x257 ?x174)))
blanchet@57170
   641
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   642
(let (($x179 (not $x178)))
blanchet@57170
   643
(=> $x179 $x259)))))))
blanchet@57170
   644
))
blanchet@57170
   645
(let (($x258 (< ?x257 b_Infinity$)))
blanchet@57170
   646
(let (($x209 (exists ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   647
(let (($x191 (< ?x174 b_Infinity$)))
blanchet@57170
   648
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   649
(let (($x179 (not $x178)))
blanchet@57170
   650
(and $x179 $x191))))))
blanchet@57170
   651
))
blanchet@57170
   652
(let (($x286 (and $x209 (and $x256 (and $x258 (and $x261 (and $x266 (and $x276 $x280))))))))
blanchet@57170
   653
(let (($x287 (and true $x286)))
blanchet@57170
   654
(let (($x288 (and true $x287)))
blanchet@57170
   655
(let (($x336 (=> $x288 (and $x290 $x334))))
blanchet@57170
   656
(let (($x248 (and $x246 (=> $x246 true))))
blanchet@57170
   657
(let (($x244 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   658
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
   659
(let ((?x235 (+ ?x230 ?x155)))
blanchet@57170
   660
(let ((?x233 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
   661
(let (($x156 (< ?x155 b_Infinity$)))
blanchet@57170
   662
(let (($x231 (< ?x230 b_Infinity$)))
blanchet@57170
   663
(let (($x241 (and $x231 $x156)))
blanchet@57170
   664
(=> $x241 (<= ?x233 ?x235))))))))))
blanchet@57170
   665
))
blanchet@57170
   666
(let (($x249 (=> $x244 $x248)))
blanchet@57170
   667
(let (($x240 (forall ((?v0 B_Vertex$) )(let (($x238 (exists ((?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   668
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
   669
(let ((?x235 (+ ?x230 ?x155)))
blanchet@57170
   670
(let ((?x233 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
   671
(let (($x234 (< ?x230 ?x233)))
blanchet@57170
   672
(and $x234 (= ?x233 ?x235))))))))
blanchet@57170
   673
))
blanchet@57170
   674
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
   675
(let (($x231 (< ?x230 b_Infinity$)))
blanchet@57170
   676
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   677
(let (($x132 (not $x127)))
blanchet@57170
   678
(let (($x232 (and $x132 $x231)))
blanchet@57170
   679
(=> $x232 $x238))))))))
blanchet@57170
   680
))
blanchet@57170
   681
(let (($x251 (=> $x240 (and $x244 $x249))))
blanchet@57170
   682
(let (($x225 (and true (and $x212 (and $x215 (and $x217 (and $x220 true)))))))
blanchet@57170
   683
(let (($x226 (and true $x225)))
blanchet@57170
   684
(let (($x210 (not $x209)))
blanchet@57170
   685
(let (($x228 (and true (and $x210 $x226))))
blanchet@57170
   686
(let (($x229 (and true $x228)))
blanchet@57170
   687
(let (($x253 (=> $x229 (and $x240 $x251))))
blanchet@57170
   688
(let (($x199 (forall ((?v0 B_Vertex$) )(let (($x197 (exists ((?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   689
(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   690
(let ((?x187 (+ ?x174 ?x155)))
blanchet@57170
   691
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   692
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   693
(let (($x193 (< ?x174 ?x182)))
blanchet@57170
   694
(and $x193 (and $x178 (= ?x182 ?x187))))))))))
blanchet@57170
   695
))
blanchet@57170
   696
(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   697
(let (($x191 (< ?x174 b_Infinity$)))
blanchet@57170
   698
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   699
(let (($x132 (not $x127)))
blanchet@57170
   700
(let (($x192 (and $x132 $x191)))
blanchet@57170
   701
(=> $x192 $x197))))))))
blanchet@57170
   702
))
blanchet@57170
   703
(let (($x200 (and $x199 true)))
blanchet@57170
   704
(let (($x190 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   705
(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   706
(let ((?x187 (+ ?x174 ?x155)))
blanchet@57170
   707
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   708
(let (($x156 (< ?x155 b_Infinity$)))
blanchet@57170
   709
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   710
(let (($x186 (and $x178 $x156)))
blanchet@57170
   711
(=> $x186 (<= ?x182 ?x187))))))))))
blanchet@57170
   712
))
blanchet@57170
   713
(let (($x185 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   714
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   715
(let (($x183 (<= ?x182 ?x174)))
blanchet@57170
   716
(let (($x180 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   717
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   718
(let (($x179 (not $x178)))
blanchet@57170
   719
(let (($x181 (and $x179 $x180)))
blanchet@57170
   720
(=> $x181 $x183)))))))))
blanchet@57170
   721
))
blanchet@57170
   722
(let (($x176 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   723
(<= 0 ?x174)))
blanchet@57170
   724
))
blanchet@57170
   725
(let (($x205 (and true (and $x173 (and $x176 (and $x185 (and $x190 $x200)))))))
blanchet@57170
   726
(let (($x206 (and true $x205)))
blanchet@57170
   727
(let (($x170 (forall ((?v0 B_Vertex$) )(let (($x168 (exists ((?v1 B_Vertex$) )(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   728
(let (($x166 (and $x136 (= (v_b_SP_G_0$ ?v0) (+ (v_b_SP_G_0$ ?v1) (b_G$ (pair$ ?v1 ?v0)))))))
blanchet@57170
   729
(and (< (v_b_SP_G_0$ ?v1) (v_b_SP_G_0$ ?v0)) $x166))))
blanchet@57170
   730
))
blanchet@57170
   731
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   732
(let (($x132 (not $x127)))
blanchet@57170
   733
(let (($x163 (and $x132 (< (v_b_SP_G_0$ ?v0) b_Infinity$))))
blanchet@57170
   734
(=> $x163 $x168))))))
blanchet@57170
   735
))
blanchet@57170
   736
(let (($x338 (=> (and $x170 $x206) (and $x253 $x336))))
blanchet@57170
   737
(let (($x161 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x150 (v_b_SP_G_0$ ?v0)))
blanchet@57170
   738
(let (($x159 (<= ?x150 (+ (v_b_SP_G_0$ ?v1) (b_G$ (pair$ ?v1 ?v0))))))
blanchet@57170
   739
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   740
(let (($x156 (< ?x155 b_Infinity$)))
blanchet@57170
   741
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   742
(let (($x157 (and $x136 $x156)))
blanchet@57170
   743
(=> $x157 $x159))))))))
blanchet@57170
   744
))
blanchet@57170
   745
(let (($x340 (=> $x161 (and $x170 $x338))))
blanchet@57170
   746
(let (($x153 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
   747
(let ((?x150 (v_b_SP_G_0$ ?v0)))
blanchet@57170
   748
(let (($x151 (<= ?x150 ?x128)))
blanchet@57170
   749
(let (($x148 (v_b_Visited_G_0$ ?v0)))
blanchet@57170
   750
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   751
(let (($x137 (not $x136)))
blanchet@57170
   752
(let (($x149 (and $x137 $x148)))
blanchet@57170
   753
(=> $x149 $x151)))))))))
blanchet@57170
   754
))
blanchet@57170
   755
(let (($x342 (=> $x153 (and $x161 $x340))))
blanchet@57170
   756
(let (($x147 (forall ((?v0 B_Vertex$) )(let ((?x128 (v_b_SP_G_0$ ?v0)))
blanchet@57170
   757
(<= 0 ?x128)))
blanchet@57170
   758
))
blanchet@57170
   759
(let (($x344 (=> $x147 (and $x153 $x342))))
blanchet@57170
   760
(let (($x346 (=> $x145 (and $x147 $x344))))
blanchet@57170
   761
(let (($x135 (forall ((?v0 B_Vertex$) )(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   762
(let (($x132 (not $x127)))
blanchet@57170
   763
(=> $x132 (= (v_b_SP_G_0$ ?v0) b_Infinity$)))))
blanchet@57170
   764
))
blanchet@57170
   765
(let (($x131 (forall ((?v0 B_Vertex$) )(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   766
(=> $x127 (= (v_b_SP_G_0$ ?v0) 0))))
blanchet@57170
   767
))
blanchet@57170
   768
(let (($x142 (and true (and $x131 (and $x135 (and $x138 true))))))
blanchet@57170
   769
(let (($x143 (and true $x142)))
blanchet@57170
   770
(let (($x348 (=> $x143 (and $x145 $x346))))
blanchet@57170
   771
(let (($x349 (not $x348)))
blanchet@57170
   772
(let (($x710 (forall ((?v0 B_Vertex$) )(let (($x698 (exists ((?v1 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   773
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   774
(let ((?x671 (+ ?x155 ?x273)))
blanchet@57170
   775
(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   776
(let (($x689 (= ?x303 ?x671)))
blanchet@57170
   777
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   778
(let (($x692 (and $x291 $x689)))
blanchet@57170
   779
(let (($x314 (< ?x273 ?x303)))
blanchet@57170
   780
(and $x314 $x692))))))))))
blanchet@57170
   781
))
blanchet@57170
   782
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   783
(let (($x132 (not $x127)))
blanchet@57170
   784
(let (($x313 (and $x132 (< (v_b_SP_G_2$ ?v0) b_Infinity$))))
blanchet@57170
   785
(or (not $x313) $x698))))))
blanchet@57170
   786
))
blanchet@57170
   787
(let (($x686 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   788
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   789
(let ((?x671 (+ ?x155 ?x273)))
blanchet@57170
   790
(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   791
(let (($x674 (<= ?x303 ?x671)))
blanchet@57170
   792
(or (not (and (fun_app$ v_b_Visited_G_2$ ?v1) (< ?x155 b_Infinity$))) $x674)))))))
blanchet@57170
   793
))
blanchet@57170
   794
(let (($x738 (or (not $x686) $x710)))
blanchet@57170
   795
(let (($x743 (and $x686 $x738)))
blanchet@57170
   796
(let (($x668 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   797
(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   798
(let (($x304 (<= ?x303 ?x273)))
blanchet@57170
   799
(let (($x301 (fun_app$ v_b_Visited_G_2$ ?v0)))
blanchet@57170
   800
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   801
(let (($x300 (not $x291)))
blanchet@57170
   802
(let (($x302 (and $x300 $x301)))
blanchet@57170
   803
(let (($x664 (not $x302)))
blanchet@57170
   804
(or $x664 $x304))))))))))
blanchet@57170
   805
))
blanchet@57170
   806
(let (($x750 (or (not $x668) $x743)))
blanchet@57170
   807
(let (($x755 (and $x668 $x750)))
blanchet@57170
   808
(let (($x762 (or (not $x299) $x755)))
blanchet@57170
   809
(let (($x767 (and $x299 $x762)))
blanchet@57170
   810
(let (($x774 (or $x773 $x767)))
blanchet@57170
   811
(let (($x779 (and $x297 $x774)))
blanchet@57170
   812
(let (($x786 (or $x785 $x779)))
blanchet@57170
   813
(let (($x791 (and $x652 $x786)))
blanchet@57170
   814
(let (($x798 (or (not $x290) $x791)))
blanchet@57170
   815
(let (($x803 (and $x290 $x798)))
blanchet@57170
   816
(let (($x617 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   817
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   818
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
   819
(let ((?x268 (b_G$ (pair$ v_b_v_G_1$ ?v0))))
blanchet@57170
   820
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   821
(let ((?x270 (+ ?x257 ?x268)))
blanchet@57170
   822
(let (($x272 (and (< ?x268 b_Infinity$) (< ?x270 ?x174))))
blanchet@57170
   823
(or $x272 $x278)))))))))
blanchet@57170
   824
))
blanchet@57170
   825
(let (($x611 (forall ((?v0 B_Vertex$) )(let ((?x268 (b_G$ (pair$ v_b_v_G_1$ ?v0))))
blanchet@57170
   826
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   827
(let ((?x270 (+ ?x257 ?x268)))
blanchet@57170
   828
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
   829
(let (($x274 (= ?x273 ?x270)))
blanchet@57170
   830
(let (($x272 (and (< ?x268 b_Infinity$) (< ?x270 (fun_app$c v_b_SP_G_1$ ?v0)))))
blanchet@57170
   831
(let (($x277 (not $x272)))
blanchet@57170
   832
(or $x277 $x274)))))))))
blanchet@57170
   833
))
blanchet@57170
   834
(let (($x620 (and $x611 $x617)))
blanchet@57170
   835
(let (($x623 (and $x266 $x620)))
blanchet@57170
   836
(let (($x605 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   837
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
   838
(let (($x259 (<= ?x257 ?x174)))
blanchet@57170
   839
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   840
(or $x178 $x259))))))
blanchet@57170
   841
))
blanchet@57170
   842
(let (($x626 (and $x605 $x623)))
blanchet@57170
   843
(let (($x629 (and $x258 $x626)))
blanchet@57170
   844
(let (($x632 (and $x256 $x629)))
blanchet@57170
   845
(let (($x635 (and $x209 $x632)))
blanchet@57170
   846
(let (($x810 (or (not $x635) $x803)))
blanchet@57170
   847
(let (($x557 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
   848
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   849
(let ((?x521 (+ ?x155 ?x230)))
blanchet@57170
   850
(let ((?x233 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
   851
(let (($x545 (<= ?x233 ?x521)))
blanchet@57170
   852
(or (not (and (< ?x230 b_Infinity$) (< ?x155 b_Infinity$))) $x545)))))))
blanchet@57170
   853
))
blanchet@57170
   854
(let (($x573 (or (not $x557) $x246)))
blanchet@57170
   855
(let (($x578 (and $x557 $x573)))
blanchet@57170
   856
(let (($x542 (forall ((?v0 B_Vertex$) )(let (($x530 (exists ((?v1 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
   857
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   858
(let ((?x521 (+ ?x155 ?x230)))
blanchet@57170
   859
(let ((?x233 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
   860
(let (($x524 (= ?x233 ?x521)))
blanchet@57170
   861
(let (($x234 (< ?x230 ?x233)))
blanchet@57170
   862
(and $x234 $x524))))))))
blanchet@57170
   863
))
blanchet@57170
   864
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
   865
(let (($x231 (< ?x230 b_Infinity$)))
blanchet@57170
   866
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   867
(let (($x132 (not $x127)))
blanchet@57170
   868
(let (($x232 (and $x132 $x231)))
blanchet@57170
   869
(or (not $x232) $x530))))))))
blanchet@57170
   870
))
blanchet@57170
   871
(let (($x585 (or (not $x542) $x578)))
blanchet@57170
   872
(let (($x590 (and $x542 $x585)))
blanchet@57170
   873
(let (($x597 (or (not (and $x210 (and $x212 (and $x215 (and $x217 $x220))))) $x590)))
blanchet@57170
   874
(let (($x815 (and $x597 $x810)))
blanchet@57170
   875
(let (($x449 (forall ((?v0 B_Vertex$) )(let (($x437 (exists ((?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   876
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   877
(let ((?x410 (+ ?x155 ?x174)))
blanchet@57170
   878
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   879
(let (($x428 (= ?x182 ?x410)))
blanchet@57170
   880
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   881
(let (($x431 (and $x178 $x428)))
blanchet@57170
   882
(let (($x193 (< ?x174 ?x182)))
blanchet@57170
   883
(and $x193 $x431))))))))))
blanchet@57170
   884
))
blanchet@57170
   885
(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   886
(let (($x191 (< ?x174 b_Infinity$)))
blanchet@57170
   887
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   888
(let (($x132 (not $x127)))
blanchet@57170
   889
(let (($x192 (and $x132 $x191)))
blanchet@57170
   890
(or (not $x192) $x437))))))))
blanchet@57170
   891
))
blanchet@57170
   892
(let (($x425 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   893
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   894
(let ((?x410 (+ ?x155 ?x174)))
blanchet@57170
   895
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   896
(let (($x413 (<= ?x182 ?x410)))
blanchet@57170
   897
(or (not (and (fun_app$ v_b_Visited_G_1$ ?v1) (< ?x155 b_Infinity$))) $x413)))))))
blanchet@57170
   898
))
blanchet@57170
   899
(let (($x459 (and $x425 $x449)))
blanchet@57170
   900
(let (($x407 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
   901
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
   902
(let (($x183 (<= ?x182 ?x174)))
blanchet@57170
   903
(let (($x180 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
   904
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
   905
(let (($x179 (not $x178)))
blanchet@57170
   906
(let (($x181 (and $x179 $x180)))
blanchet@57170
   907
(let (($x403 (not $x181)))
blanchet@57170
   908
(or $x403 $x183))))))))))
blanchet@57170
   909
))
blanchet@57170
   910
(let (($x462 (and $x407 $x459)))
blanchet@57170
   911
(let (($x465 (and $x176 $x462)))
blanchet@57170
   912
(let (($x468 (and $x173 $x465)))
blanchet@57170
   913
(let (($x400 (forall ((?v0 B_Vertex$) )(let (($x168 (exists ((?v1 B_Vertex$) )(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   914
(let (($x166 (and $x136 (= (v_b_SP_G_0$ ?v0) (+ (v_b_SP_G_0$ ?v1) (b_G$ (pair$ ?v1 ?v0)))))))
blanchet@57170
   915
(and (< (v_b_SP_G_0$ ?v1) (v_b_SP_G_0$ ?v0)) $x166))))
blanchet@57170
   916
))
blanchet@57170
   917
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
   918
(let (($x132 (not $x127)))
blanchet@57170
   919
(let (($x163 (and $x132 (< (v_b_SP_G_0$ ?v0) b_Infinity$))))
blanchet@57170
   920
(or (not $x163) $x168))))))
blanchet@57170
   921
))
blanchet@57170
   922
(let (($x482 (and $x400 $x468)))
blanchet@57170
   923
(let (($x822 (or (not $x482) $x815)))
blanchet@57170
   924
(let (($x827 (and $x400 $x822)))
blanchet@57170
   925
(let (($x393 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x150 (v_b_SP_G_0$ ?v0)))
blanchet@57170
   926
(let (($x159 (<= ?x150 (+ (v_b_SP_G_0$ ?v1) (b_G$ (pair$ ?v1 ?v0))))))
blanchet@57170
   927
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
   928
(let (($x156 (< ?x155 b_Infinity$)))
blanchet@57170
   929
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   930
(let (($x157 (and $x136 $x156)))
blanchet@57170
   931
(or (not $x157) $x159))))))))
blanchet@57170
   932
))
blanchet@57170
   933
(let (($x834 (or (not $x393) $x827)))
blanchet@57170
   934
(let (($x839 (and $x393 $x834)))
blanchet@57170
   935
(let (($x386 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
   936
(let ((?x150 (v_b_SP_G_0$ ?v0)))
blanchet@57170
   937
(let (($x151 (<= ?x150 ?x128)))
blanchet@57170
   938
(let (($x148 (v_b_Visited_G_0$ ?v0)))
blanchet@57170
   939
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
   940
(let (($x137 (not $x136)))
blanchet@57170
   941
(let (($x149 (and $x137 $x148)))
blanchet@57170
   942
(let (($x382 (not $x149)))
blanchet@57170
   943
(or $x382 $x151))))))))))
blanchet@57170
   944
))
blanchet@57170
   945
(let (($x846 (or (not $x386) $x839)))
blanchet@57170
   946
(let (($x851 (and $x386 $x846)))
blanchet@57170
   947
(let (($x858 (or (not $x147) $x851)))
blanchet@57170
   948
(let (($x863 (and $x147 $x858)))
blanchet@57170
   949
(let (($x870 (or $x869 $x863)))
blanchet@57170
   950
(let (($x875 (and $x145 $x870)))
blanchet@57170
   951
(let (($x882 (or (not (and $x354 (and $x360 $x138))) $x875)))
blanchet@57170
   952
(let (($x1323 (exists ((?v1 B_Vertex$) )(let ((?x303 (v_b_SP_G_2$ ?0)))
blanchet@57170
   953
(let ((?x1263 (* (- 1) ?x303)))
blanchet@57170
   954
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   955
(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
   956
(let (($x1306 (= (+ ?x155 ?x273 ?x1263) 0)))
blanchet@57170
   957
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   958
(let (($x1262 (>= (+ ?x273 ?x1263) 0)))
blanchet@57170
   959
(let (($x1309 (not $x1262)))
blanchet@57170
   960
(and $x1309 $x291 $x1306))))))))))
blanchet@57170
   961
))
blanchet@57170
   962
(let (($x132 (not $x127)))
blanchet@57170
   963
(let (($x1300 (and $x132 (not (<= (+ b_Infinity$ (* (- 1) (v_b_SP_G_2$ ?0))) 0)))))
blanchet@57170
   964
(let (($x698 (exists ((?v1 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
   965
(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
   966
(let ((?x671 (+ ?x155 ?x273)))
blanchet@57170
   967
(let ((?x303 (v_b_SP_G_2$ ?0)))
blanchet@57170
   968
(let (($x689 (= ?x303 ?x671)))
blanchet@57170
   969
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
   970
(let (($x692 (and $x291 $x689)))
blanchet@57170
   971
(let (($x314 (< ?x273 ?x303)))
blanchet@57170
   972
(and $x314 $x692))))))))))
blanchet@57170
   973
))
blanchet@57170
   974
(let (($x705 (or (not (and $x132 (< (v_b_SP_G_2$ ?0) b_Infinity$))) $x698)))
blanchet@57170
   975
(let ((?x303 (v_b_SP_G_2$ ?1)))
blanchet@57170
   976
(let ((?x1263 (* (- 1) ?x303)))
blanchet@57170
   977
(let ((?x273 (v_b_SP_G_2$ ?0)))
blanchet@57170
   978
(let ((?x155 (b_G$ (pair$ ?0 ?1))))
blanchet@57170
   979
(let (($x1306 (= (+ ?x155 ?x273 ?x1263) 0)))
blanchet@57170
   980
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?0)))
blanchet@57170
   981
(let (($x1262 (>= (+ ?x273 ?x1263) 0)))
blanchet@57170
   982
(let (($x1309 (not $x1262)))
blanchet@57170
   983
(let (($x1318 (and $x1309 $x291 $x1306)))
blanchet@57170
   984
(let ((?x671 (+ ?x155 ?x273)))
blanchet@57170
   985
(let (($x689 (= ?x303 ?x671)))
blanchet@57170
   986
(let (($x692 (and $x291 $x689)))
blanchet@57170
   987
(let (($x314 (< ?x273 ?x303)))
blanchet@57170
   988
(let (($x695 (and $x314 $x692)))
blanchet@57170
   989
(let ((@x1317 (monotonicity (rewrite (= $x314 $x1309)) (monotonicity (rewrite (= $x689 $x1306)) (= $x692 (and $x291 $x1306))) (= $x695 (and $x1309 (and $x291 $x1306))))))
blanchet@57170
   990
(let ((@x1322 (trans @x1317 (rewrite (= (and $x1309 (and $x291 $x1306)) $x1318)) (= $x695 $x1318))))
blanchet@57170
   991
(let (($x1298 (= (< ?x273 b_Infinity$) (not (<= (+ b_Infinity$ (* (- 1) ?x273)) 0)))))
blanchet@57170
   992
(let ((@x1302 (monotonicity (rewrite $x1298) (= (and $x132 (< ?x273 b_Infinity$)) $x1300))))
blanchet@57170
   993
(let ((@x1305 (monotonicity @x1302 (= (not (and $x132 (< ?x273 b_Infinity$))) (not $x1300)))))
blanchet@57170
   994
(let ((@x1328 (monotonicity @x1305 (quant-intro @x1322 (= $x698 $x1323)) (= $x705 (or (not $x1300) $x1323)))))
blanchet@57170
   995
(let (($x1282 (>= (+ ?x155 ?x273 ?x1263) 0)))
blanchet@57170
   996
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
   997
(let (($x923 (not $x922)))
blanchet@57170
   998
(let (($x1276 (and $x291 $x923)))
blanchet@57170
   999
(let (($x1279 (not $x1276)))
blanchet@57170
  1000
(let (($x1286 (or $x1279 $x1282)))
blanchet@57170
  1001
(let (($x674 (<= ?x303 ?x671)))
blanchet@57170
  1002
(let (($x681 (or (not (and $x291 (< ?x155 b_Infinity$))) $x674)))
blanchet@57170
  1003
(let ((@x925 (rewrite (= (< ?x155 b_Infinity$) $x923))))
blanchet@57170
  1004
(let ((@x1281 (monotonicity (monotonicity @x925 (= (and $x291 (< ?x155 b_Infinity$)) $x1276)) (= (not (and $x291 (< ?x155 b_Infinity$))) $x1279))))
blanchet@57170
  1005
(let ((@x1291 (quant-intro (monotonicity @x1281 (rewrite (= $x674 $x1282)) (= $x681 $x1286)) (= $x686 $x1289))))
blanchet@57170
  1006
(let ((@x1334 (monotonicity (monotonicity @x1291 (= (not $x686) $x1292)) (quant-intro @x1328 (= $x710 $x1329)) (= $x738 $x1332))))
blanchet@57170
  1007
(let (($x301 (fun_app$ v_b_Visited_G_2$ ?1)))
blanchet@57170
  1008
(let (($x300 (not $x291)))
blanchet@57170
  1009
(let (($x302 (and $x300 $x301)))
blanchet@57170
  1010
(let (($x664 (not $x302)))
blanchet@57170
  1011
(let (($x1267 (or $x664 $x1262)))
blanchet@57170
  1012
(let (($x304 (<= ?x303 ?x273)))
blanchet@57170
  1013
(let (($x665 (or $x664 $x304)))
blanchet@57170
  1014
(let ((@x1272 (quant-intro (monotonicity (rewrite (= $x304 $x1262)) (= $x665 $x1267)) (= $x668 $x1270))))
blanchet@57170
  1015
(let ((@x1340 (monotonicity (monotonicity @x1272 (= (not $x668) $x1273)) (monotonicity @x1291 @x1334 (= $x743 $x1335)) (= $x750 $x1338))))
blanchet@57170
  1016
(let ((@x1258 (quant-intro (rewrite (= (<= 0 ?x273) (>= ?x273 0))) (= $x299 $x1256))))
blanchet@57170
  1017
(let ((@x1346 (monotonicity (monotonicity @x1258 (= (not $x299) $x1259)) (monotonicity @x1272 @x1340 (= $x755 $x1341)) (= $x762 $x1344))))
blanchet@57170
  1018
(let ((@x1352 (monotonicity (monotonicity @x1258 @x1346 (= $x767 $x1347)) (= $x774 $x1350))))
blanchet@57170
  1019
(let ((@x1361 (monotonicity (monotonicity (monotonicity @x1352 (= $x779 $x1353)) (= $x786 $x1356)) (= $x791 $x1359))))
blanchet@57170
  1020
(let (($x1243 (>= (+ (fun_app$c v_b_SP_G_1$ ?0) (* (- 1) ?x273)) 0)))
blanchet@57170
  1021
(let ((@x1249 (quant-intro (rewrite (= (<= ?x273 (fun_app$c v_b_SP_G_1$ ?0)) $x1243)) (= $x290 $x1247))))
blanchet@57170
  1022
(let ((@x1364 (monotonicity (monotonicity @x1249 (= (not $x290) $x1250)) @x1361 (= $x798 $x1362))))
blanchet@57170
  1023
(let (($x1232 (and $x1080 (and $x256 (and $x1214 (and $x1209 (and $x266 (and $x1193 $x1199))))))))
blanchet@57170
  1024
(let (($x1230 (= $x632 (and $x256 (and $x1214 (and $x1209 (and $x266 (and $x1193 $x1199))))))))
blanchet@57170
  1025
(let ((?x174 (fun_app$c v_b_SP_G_1$ ?0)))
blanchet@57170
  1026
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
  1027
(let (($x1175 (<= (+ ?x174 ?x1173 (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?0)))) 0)))
blanchet@57170
  1028
(let (($x1169 (<= (+ b_Infinity$ (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?0)))) 0)))
blanchet@57170
  1029
(let (($x1179 (and (not $x1169) (not $x1175))))
blanchet@57170
  1030
(let (($x1196 (or $x1179 $x278)))
blanchet@57170
  1031
(let (($x272 (and (< (b_G$ (pair$ v_b_v_G_1$ ?0)) b_Infinity$) (< (+ ?x257 (b_G$ (pair$ v_b_v_G_1$ ?0))) ?x174))))
blanchet@57170
  1032
(let (($x614 (or $x272 $x278)))
blanchet@57170
  1033
(let ((@x1178 (rewrite (= (< (+ ?x257 (b_G$ (pair$ v_b_v_G_1$ ?0))) ?x174) (not $x1175)))))
blanchet@57170
  1034
(let ((@x1172 (rewrite (= (< (b_G$ (pair$ v_b_v_G_1$ ?0)) b_Infinity$) (not $x1169)))))
blanchet@57170
  1035
(let ((@x1198 (monotonicity (monotonicity @x1172 @x1178 (= $x272 $x1179)) (= $x614 $x1196))))
blanchet@57170
  1036
(let (($x1185 (= (+ ?x257 (b_G$ (pair$ v_b_v_G_1$ ?0)) (* (- 1) ?x273)) 0)))
blanchet@57170
  1037
(let (($x1182 (not $x1179)))
blanchet@57170
  1038
(let (($x1190 (or $x1182 $x1185)))
blanchet@57170
  1039
(let ((?x268 (b_G$ (pair$ v_b_v_G_1$ ?0))))
blanchet@57170
  1040
(let ((?x270 (+ ?x257 ?x268)))
blanchet@57170
  1041
(let (($x274 (= ?x273 ?x270)))
blanchet@57170
  1042
(let (($x277 (not $x272)))
blanchet@57170
  1043
(let (($x608 (or $x277 $x274)))
blanchet@57170
  1044
(let ((@x1184 (monotonicity (monotonicity @x1172 @x1178 (= $x272 $x1179)) (= $x277 $x1182))))
blanchet@57170
  1045
(let ((@x1195 (quant-intro (monotonicity @x1184 (rewrite (= $x274 $x1185)) (= $x608 $x1190)) (= $x611 $x1193))))
blanchet@57170
  1046
(let ((@x1219 (monotonicity @x1195 (quant-intro @x1198 (= $x617 $x1199)) (= $x620 (and $x1193 $x1199)))))
blanchet@57170
  1047
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?0)))
blanchet@57170
  1048
(let (($x1206 (or $x178 (>= (+ ?x174 ?x1173) 0))))
blanchet@57170
  1049
(let (($x259 (<= ?x257 ?x174)))
blanchet@57170
  1050
(let (($x602 (or $x178 $x259)))
blanchet@57170
  1051
(let ((@x1208 (monotonicity (rewrite (= $x259 (>= (+ ?x174 ?x1173) 0))) (= $x602 $x1206))))
blanchet@57170
  1052
(let ((@x1225 (monotonicity (quant-intro @x1208 (= $x605 $x1209)) (monotonicity @x1219 (= $x623 (and $x266 (and $x1193 $x1199)))) (= $x626 (and $x1209 (and $x266 (and $x1193 $x1199)))))))
blanchet@57170
  1053
(let ((@x1228 (monotonicity (rewrite (= $x258 $x1214)) @x1225 (= $x629 (and $x1214 (and $x1209 (and $x266 (and $x1193 $x1199))))))))
blanchet@57170
  1054
(let (($x1002 (<= (+ b_Infinity$ (* (- 1) ?x174)) 0)))
blanchet@57170
  1055
(let (($x1003 (not $x1002)))
blanchet@57170
  1056
(let (($x179 (not $x178)))
blanchet@57170
  1057
(let (($x1077 (and $x179 $x1003)))
blanchet@57170
  1058
(let ((@x1079 (monotonicity (rewrite (= (< ?x174 b_Infinity$) $x1003)) (= (and $x179 (< ?x174 b_Infinity$)) $x1077))))
blanchet@57170
  1059
(let ((@x1234 (monotonicity (quant-intro @x1079 (= $x209 $x1080)) (monotonicity @x1228 $x1230) (= $x635 $x1232))))
blanchet@57170
  1060
(let ((@x1242 (monotonicity (trans @x1234 (rewrite (= $x1232 $x1235)) (= $x635 $x1235)) (= (not $x635) $x1240))))
blanchet@57170
  1061
(let ((@x1370 (monotonicity @x1242 (monotonicity @x1249 @x1364 (= $x803 $x1365)) (= $x810 $x1368))))
blanchet@57170
  1062
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?0)))
blanchet@57170
  1063
(let (($x1140 (>= (+ ?x155 ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ ?1))) 0)))
blanchet@57170
  1064
(let (($x1099 (<= (+ b_Infinity$ (* (- 1) ?x230)) 0)))
blanchet@57170
  1065
(let (($x1100 (not $x1099)))
blanchet@57170
  1066
(let (($x1134 (and $x1100 $x923)))
blanchet@57170
  1067
(let (($x1137 (not $x1134)))
blanchet@57170
  1068
(let (($x1143 (or $x1137 $x1140)))
blanchet@57170
  1069
(let ((?x521 (+ ?x155 ?x230)))
blanchet@57170
  1070
(let ((?x233 (fun_app$c v_b_SP_G_3$ ?1)))
blanchet@57170
  1071
(let (($x545 (<= ?x233 ?x521)))
blanchet@57170
  1072
(let (($x552 (or (not (and (< ?x230 b_Infinity$) (< ?x155 b_Infinity$))) $x545)))
blanchet@57170
  1073
(let ((@x1136 (monotonicity (rewrite (= (< ?x230 b_Infinity$) $x1100)) @x925 (= (and (< ?x230 b_Infinity$) (< ?x155 b_Infinity$)) $x1134))))
blanchet@57170
  1074
(let ((@x1139 (monotonicity @x1136 (= (not (and (< ?x230 b_Infinity$) (< ?x155 b_Infinity$))) $x1137))))
blanchet@57170
  1075
(let ((@x1148 (quant-intro (monotonicity @x1139 (rewrite (= $x545 $x1140)) (= $x552 $x1143)) (= $x557 $x1146))))
blanchet@57170
  1076
(let ((@x1154 (monotonicity (monotonicity @x1148 (= (not $x557) $x1149)) (= $x573 $x1152))))
blanchet@57170
  1077
(let (($x1122 (exists ((?v1 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
  1078
(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
  1079
(and (not (>= (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ ?0))) 0)) (= (+ ?x155 ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ ?0))) 0)))))
blanchet@57170
  1080
))
blanchet@57170
  1081
(let (($x1103 (and $x132 $x1100)))
blanchet@57170
  1082
(let (($x1106 (not $x1103)))
blanchet@57170
  1083
(let (($x1125 (or $x1106 $x1122)))
blanchet@57170
  1084
(let (($x530 (exists ((?v1 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
  1085
(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
  1086
(let ((?x521 (+ ?x155 ?x230)))
blanchet@57170
  1087
(let ((?x233 (fun_app$c v_b_SP_G_3$ ?0)))
blanchet@57170
  1088
(let (($x524 (= ?x233 ?x521)))
blanchet@57170
  1089
(let (($x234 (< ?x230 ?x233)))
blanchet@57170
  1090
(and $x234 $x524))))))))
blanchet@57170
  1091
))
blanchet@57170
  1092
(let (($x537 (or (not (and $x132 (< ?x230 b_Infinity$))) $x530)))
blanchet@57170
  1093
(let (($x1119 (and (not (>= (+ ?x230 (* (- 1) ?x233)) 0)) (= (+ ?x155 ?x230 (* (- 1) ?x233)) 0))))
blanchet@57170
  1094
(let (($x524 (= ?x233 ?x521)))
blanchet@57170
  1095
(let (($x234 (< ?x230 ?x233)))
blanchet@57170
  1096
(let (($x527 (and $x234 $x524)))
blanchet@57170
  1097
(let ((@x1121 (monotonicity (rewrite (= $x234 (not (>= (+ ?x230 (* (- 1) ?x233)) 0)))) (rewrite (= $x524 (= (+ ?x155 ?x230 (* (- 1) ?x233)) 0))) (= $x527 $x1119))))
blanchet@57170
  1098
(let ((@x1105 (monotonicity (rewrite (= (< ?x230 b_Infinity$) $x1100)) (= (and $x132 (< ?x230 b_Infinity$)) $x1103))))
blanchet@57170
  1099
(let ((@x1127 (monotonicity (monotonicity @x1105 (= (not (and $x132 (< ?x230 b_Infinity$))) $x1106)) (quant-intro @x1121 (= $x530 $x1122)) (= $x537 $x1125))))
blanchet@57170
  1100
(let ((@x1133 (monotonicity (quant-intro @x1127 (= $x542 $x1128)) (= (not $x542) $x1131))))
blanchet@57170
  1101
(let ((@x1160 (monotonicity @x1133 (monotonicity @x1148 @x1154 (= $x578 $x1155)) (= $x585 $x1158))))
blanchet@57170
  1102
(let ((@x1091 (rewrite (= (and $x1083 (and $x212 (and $x215 (and $x217 $x220)))) $x1089))))
blanchet@57170
  1103
(let (($x493 (and $x212 (and $x215 (and $x217 $x220)))))
blanchet@57170
  1104
(let (($x507 (and $x210 $x493)))
blanchet@57170
  1105
(let ((@x1088 (monotonicity (monotonicity (quant-intro @x1079 (= $x209 $x1080)) (= $x210 $x1083)) (= $x507 (and $x1083 $x493)))))
blanchet@57170
  1106
(let ((@x1096 (monotonicity (trans @x1088 @x1091 (= $x507 $x1089)) (= (not $x507) $x1094))))
blanchet@57170
  1107
(let ((@x1166 (monotonicity @x1096 (monotonicity (quant-intro @x1127 (= $x542 $x1128)) @x1160 (= $x590 $x1161)) (= $x597 $x1164))))
blanchet@57170
  1108
(let (($x1070 (= (and $x980 (and $x173 (and $x1051 (and $x1045 (and $x997 $x1037))))) $x1069)))
blanchet@57170
  1109
(let (($x1067 (= $x482 (and $x980 (and $x173 (and $x1051 (and $x1045 (and $x997 $x1037))))))))
blanchet@57170
  1110
(let (($x1031 (exists ((?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
  1111
(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
  1112
(let (($x1012 (= (+ ?x155 ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?0))) 0)))
blanchet@57170
  1113
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
  1114
(let (($x1015 (>= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?0))) 0)))
blanchet@57170
  1115
(let (($x1017 (not $x1015)))
blanchet@57170
  1116
(and $x1017 $x178 $x1012))))))))
blanchet@57170
  1117
))
blanchet@57170
  1118
(let (($x1006 (and $x132 $x1003)))
blanchet@57170
  1119
(let (($x1009 (not $x1006)))
blanchet@57170
  1120
(let (($x1034 (or $x1009 $x1031)))
blanchet@57170
  1121
(let (($x437 (exists ((?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
  1122
(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
  1123
(let ((?x410 (+ ?x155 ?x174)))
blanchet@57170
  1124
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?0)))
blanchet@57170
  1125
(let (($x428 (= ?x182 ?x410)))
blanchet@57170
  1126
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
  1127
(let (($x431 (and $x178 $x428)))
blanchet@57170
  1128
(let (($x193 (< ?x174 ?x182)))
blanchet@57170
  1129
(and $x193 $x431))))))))))
blanchet@57170
  1130
))
blanchet@57170
  1131
(let (($x444 (or (not (and $x132 (< ?x174 b_Infinity$))) $x437)))
blanchet@57170
  1132
(let (($x1012 (= (+ ?x155 ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?1))) 0)))
blanchet@57170
  1133
(let (($x1015 (>= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?1))) 0)))
blanchet@57170
  1134
(let (($x1017 (not $x1015)))
blanchet@57170
  1135
(let (($x1026 (and $x1017 $x178 $x1012)))
blanchet@57170
  1136
(let ((?x410 (+ ?x155 ?x174)))
blanchet@57170
  1137
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?1)))
blanchet@57170
  1138
(let (($x428 (= ?x182 ?x410)))
blanchet@57170
  1139
(let (($x431 (and $x178 $x428)))
blanchet@57170
  1140
(let (($x193 (< ?x174 ?x182)))
blanchet@57170
  1141
(let (($x434 (and $x193 $x431)))
blanchet@57170
  1142
(let ((@x1025 (monotonicity (rewrite (= $x193 $x1017)) (monotonicity (rewrite (= $x428 $x1012)) (= $x431 (and $x178 $x1012))) (= $x434 (and $x1017 (and $x178 $x1012))))))
blanchet@57170
  1143
(let ((@x1030 (trans @x1025 (rewrite (= (and $x1017 (and $x178 $x1012)) $x1026)) (= $x434 $x1026))))
blanchet@57170
  1144
(let ((@x1008 (monotonicity (rewrite (= (< ?x174 b_Infinity$) $x1003)) (= (and $x132 (< ?x174 b_Infinity$)) $x1006))))
blanchet@57170
  1145
(let ((@x1036 (monotonicity (monotonicity @x1008 (= (not (and $x132 (< ?x174 b_Infinity$))) $x1009)) (quant-intro @x1030 (= $x437 $x1031)) (= $x444 $x1034))))
blanchet@57170
  1146
(let (($x990 (>= (+ ?x155 ?x174 (* (- 1) ?x182)) 0)))
blanchet@57170
  1147
(let (($x983 (and $x178 $x923)))
blanchet@57170
  1148
(let (($x986 (not $x983)))
blanchet@57170
  1149
(let (($x994 (or $x986 $x990)))
blanchet@57170
  1150
(let (($x413 (<= ?x182 ?x410)))
blanchet@57170
  1151
(let (($x420 (or (not (and $x178 (< ?x155 b_Infinity$))) $x413)))
blanchet@57170
  1152
(let ((@x988 (monotonicity (monotonicity @x925 (= (and $x178 (< ?x155 b_Infinity$)) $x983)) (= (not (and $x178 (< ?x155 b_Infinity$))) $x986))))
blanchet@57170
  1153
(let ((@x999 (quant-intro (monotonicity @x988 (rewrite (= $x413 $x990)) (= $x420 $x994)) (= $x425 $x997))))
blanchet@57170
  1154
(let ((@x1056 (monotonicity @x999 (quant-intro @x1036 (= $x449 $x1037)) (= $x459 (and $x997 $x1037)))))
blanchet@57170
  1155
(let (($x180 (fun_app$ v_b_Visited_G_1$ ?1)))
blanchet@57170
  1156
(let (($x181 (and $x179 $x180)))
blanchet@57170
  1157
(let (($x403 (not $x181)))
blanchet@57170
  1158
(let (($x1042 (or $x403 $x1015)))
blanchet@57170
  1159
(let (($x183 (<= ?x182 ?x174)))
blanchet@57170
  1160
(let (($x404 (or $x403 $x183)))
blanchet@57170
  1161
(let ((@x1047 (quant-intro (monotonicity (rewrite (= $x183 $x1015)) (= $x404 $x1042)) (= $x407 $x1045))))
blanchet@57170
  1162
(let ((@x1053 (quant-intro (rewrite (= (<= 0 ?x174) (>= ?x174 0))) (= $x176 $x1051))))
blanchet@57170
  1163
(let ((@x1062 (monotonicity @x1053 (monotonicity @x1047 @x1056 (= $x462 (and $x1045 (and $x997 $x1037)))) (= $x465 (and $x1051 (and $x1045 (and $x997 $x1037)))))))
blanchet@57170
  1164
(let ((@x1065 (monotonicity @x1062 (= $x468 (and $x173 (and $x1051 (and $x1045 (and $x997 $x1037))))))))
blanchet@57170
  1165
(let (($x974 (exists ((?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
  1166
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
  1167
(let (($x957 (= (+ ?x128 (* (- 1) (v_b_SP_G_0$ ?0)) ?x155) 0)))
blanchet@57170
  1168
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  1169
(let (($x907 (>= (+ ?x128 (* (- 1) (v_b_SP_G_0$ ?0))) 0)))
blanchet@57170
  1170
(let (($x960 (not $x907)))
blanchet@57170
  1171
(and $x960 $x136 $x957))))))))
blanchet@57170
  1172
))
blanchet@57170
  1173
(let (($x951 (and $x132 (not (<= (+ b_Infinity$ (* (- 1) (v_b_SP_G_0$ ?0))) 0)))))
blanchet@57170
  1174
(let (($x954 (not $x951)))
blanchet@57170
  1175
(let (($x977 (or $x954 $x974)))
blanchet@57170
  1176
(let (($x168 (exists ((?v1 B_Vertex$) )(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  1177
(let (($x166 (and $x136 (= (v_b_SP_G_0$ ?0) (+ (v_b_SP_G_0$ ?v1) (b_G$ (pair$ ?v1 ?0)))))))
blanchet@57170
  1178
(and (< (v_b_SP_G_0$ ?v1) (v_b_SP_G_0$ ?0)) $x166))))
blanchet@57170
  1179
))
blanchet@57170
  1180
(let (($x397 (or (not (and $x132 (< (v_b_SP_G_0$ ?0) b_Infinity$))) $x168)))
blanchet@57170
  1181
(let (($x957 (= (+ (v_b_SP_G_0$ ?0) (* (- 1) (v_b_SP_G_0$ ?1)) ?x155) 0)))
blanchet@57170
  1182
(let (($x136 (v_b_Visited_G_0$ ?0)))
blanchet@57170
  1183
(let (($x907 (>= (+ (v_b_SP_G_0$ ?0) (* (- 1) (v_b_SP_G_0$ ?1))) 0)))
blanchet@57170
  1184
(let (($x960 (not $x907)))
blanchet@57170
  1185
(let (($x969 (and $x960 $x136 $x957)))
blanchet@57170
  1186
(let (($x167 (and (< (v_b_SP_G_0$ ?0) (v_b_SP_G_0$ ?1)) (and $x136 (= (v_b_SP_G_0$ ?1) (+ (v_b_SP_G_0$ ?0) ?x155))))))
blanchet@57170
  1187
(let (($x964 (= (and $x136 (= (v_b_SP_G_0$ ?1) (+ (v_b_SP_G_0$ ?0) ?x155))) (and $x136 $x957))))
blanchet@57170
  1188
(let ((@x959 (rewrite (= (= (v_b_SP_G_0$ ?1) (+ (v_b_SP_G_0$ ?0) ?x155)) $x957))))
blanchet@57170
  1189
(let ((@x968 (monotonicity (rewrite (= (< (v_b_SP_G_0$ ?0) (v_b_SP_G_0$ ?1)) $x960)) (monotonicity @x959 $x964) (= $x167 (and $x960 (and $x136 $x957))))))
blanchet@57170
  1190
(let ((@x973 (trans @x968 (rewrite (= (and $x960 (and $x136 $x957)) $x969)) (= $x167 $x969))))
blanchet@57170
  1191
(let (($x949 (= (< (v_b_SP_G_0$ ?0) b_Infinity$) (not (<= (+ b_Infinity$ (* (- 1) (v_b_SP_G_0$ ?0))) 0)))))
blanchet@57170
  1192
(let ((@x953 (monotonicity (rewrite $x949) (= (and $x132 (< (v_b_SP_G_0$ ?0) b_Infinity$)) $x951))))
blanchet@57170
  1193
(let ((@x956 (monotonicity @x953 (= (not (and $x132 (< (v_b_SP_G_0$ ?0) b_Infinity$))) $x954))))
blanchet@57170
  1194
(let ((@x982 (quant-intro (monotonicity @x956 (quant-intro @x973 (= $x168 $x974)) (= $x397 $x977)) (= $x400 $x980))))
blanchet@57170
  1195
(let ((@x1076 (monotonicity (trans (monotonicity @x982 @x1065 $x1067) (rewrite $x1070) (= $x482 $x1069)) (= (not $x482) $x1074))))
blanchet@57170
  1196
(let ((@x1376 (monotonicity @x1076 (monotonicity @x1166 @x1370 (= $x815 $x1371)) (= $x822 $x1374))))
blanchet@57170
  1197
(let (($x933 (>= (+ (v_b_SP_G_0$ ?0) (* (- 1) (v_b_SP_G_0$ ?1)) ?x155) 0)))
blanchet@57170
  1198
(let (($x926 (and $x136 $x923)))
blanchet@57170
  1199
(let (($x929 (not $x926)))
blanchet@57170
  1200
(let (($x936 (or $x929 $x933)))
blanchet@57170
  1201
(let ((?x150 (v_b_SP_G_0$ ?1)))
blanchet@57170
  1202
(let (($x159 (<= ?x150 (+ (v_b_SP_G_0$ ?0) ?x155))))
blanchet@57170
  1203
(let (($x390 (or (not (and $x136 (< ?x155 b_Infinity$))) $x159)))
blanchet@57170
  1204
(let ((@x931 (monotonicity (monotonicity @x925 (= (and $x136 (< ?x155 b_Infinity$)) $x926)) (= (not (and $x136 (< ?x155 b_Infinity$))) $x929))))
blanchet@57170
  1205
(let ((@x941 (quant-intro (monotonicity @x931 (rewrite (= $x159 $x933)) (= $x390 $x936)) (= $x393 $x939))))
blanchet@57170
  1206
(let ((@x1382 (monotonicity (monotonicity @x941 (= (not $x393) $x942)) (monotonicity @x982 @x1376 (= $x827 $x1377)) (= $x834 $x1380))))
blanchet@57170
  1207
(let (($x148 (v_b_Visited_G_0$ ?1)))
blanchet@57170
  1208
(let (($x137 (not $x136)))
blanchet@57170
  1209
(let (($x149 (and $x137 $x148)))
blanchet@57170
  1210
(let (($x382 (not $x149)))
blanchet@57170
  1211
(let (($x911 (or $x382 $x907)))
blanchet@57170
  1212
(let ((?x128 (v_b_SP_G_0$ ?0)))
blanchet@57170
  1213
(let (($x151 (<= ?x150 ?x128)))
blanchet@57170
  1214
(let (($x383 (or $x382 $x151)))
blanchet@57170
  1215
(let ((@x916 (quant-intro (monotonicity (rewrite (= $x151 $x907)) (= $x383 $x911)) (= $x386 $x914))))
blanchet@57170
  1216
(let ((@x1388 (monotonicity (monotonicity @x916 (= (not $x386) $x917)) (monotonicity @x941 @x1382 (= $x839 $x1383)) (= $x846 $x1386))))
blanchet@57170
  1217
(let ((@x901 (quant-intro (rewrite (= (<= 0 ?x128) (>= ?x128 0))) (= $x147 $x899))))
blanchet@57170
  1218
(let ((@x1394 (monotonicity (monotonicity @x901 (= (not $x147) $x902)) (monotonicity @x916 @x1388 (= $x851 $x1389)) (= $x858 $x1392))))
blanchet@57170
  1219
(let ((@x1400 (monotonicity (monotonicity @x901 @x1394 (= $x863 $x1395)) (= $x870 $x1398))))
blanchet@57170
  1220
(let ((@x895 (monotonicity (rewrite (= (and $x354 (and $x360 $x138)) $x890)) (= (not (and $x354 (and $x360 $x138))) (not $x890)))))
blanchet@57170
  1221
(let ((@x1406 (monotonicity @x895 (monotonicity @x1400 (= $x875 $x1401)) (= $x882 (or (not $x890) $x1401)))))
blanchet@57170
  1222
(let (($x318 (exists ((?v1 B_Vertex$) )(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
  1223
(let (($x316 (and $x291 (= (v_b_SP_G_2$ ?0) (+ (v_b_SP_G_2$ ?v1) (b_G$ (pair$ ?v1 ?0)))))))
blanchet@57170
  1224
(let ((?x303 (v_b_SP_G_2$ ?0)))
blanchet@57170
  1225
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
  1226
(let (($x314 (< ?x273 ?x303)))
blanchet@57170
  1227
(and $x314 $x316)))))))
blanchet@57170
  1228
))
blanchet@57170
  1229
(let (($x313 (and $x132 (< ?x273 b_Infinity$))))
blanchet@57170
  1230
(let (($x319 (=> $x313 $x318)))
blanchet@57170
  1231
(let ((@x691 (monotonicity (rewrite (= (+ ?x273 ?x155) ?x671)) (= (= ?x303 (+ ?x273 ?x155)) $x689))))
blanchet@57170
  1232
(let ((@x697 (monotonicity (monotonicity @x691 (= (and $x291 (= ?x303 (+ ?x273 ?x155))) $x692)) (= (and $x314 (and $x291 (= ?x303 (+ ?x273 ?x155)))) $x695))))
blanchet@57170
  1233
(let ((@x703 (monotonicity (quant-intro @x697 (= $x318 $x698)) (= $x319 (=> $x313 $x698)))))
blanchet@57170
  1234
(let ((@x712 (quant-intro (trans @x703 (rewrite (= (=> $x313 $x698) $x705)) (= $x319 $x705)) (= $x320 $x710))))
blanchet@57170
  1235
(let ((@x719 (trans (monotonicity @x712 (= $x321 (and $x710 false))) (rewrite (= (and $x710 false) false)) (= $x321 false))))
blanchet@57170
  1236
(let ((@x726 (trans (monotonicity @x719 (= $x322 (=> false true))) (rewrite (= (=> false true) true)) (= $x322 true))))
blanchet@57170
  1237
(let ((@x733 (trans (monotonicity @x712 @x726 (= $x323 (and $x710 true))) (rewrite (= (and $x710 true) $x710)) (= $x323 $x710))))
blanchet@57170
  1238
(let (($x156 (< ?x155 b_Infinity$)))
blanchet@57170
  1239
(let (($x307 (and $x291 $x156)))
blanchet@57170
  1240
(let (($x310 (=> $x307 (<= ?x303 (+ ?x273 ?x155)))))
blanchet@57170
  1241
(let ((@x676 (monotonicity (rewrite (= (+ ?x273 ?x155) ?x671)) (= (<= ?x303 (+ ?x273 ?x155)) $x674))))
blanchet@57170
  1242
(let ((@x685 (trans (monotonicity @x676 (= $x310 (=> $x307 $x674))) (rewrite (= (=> $x307 $x674) $x681)) (= $x310 $x681))))
blanchet@57170
  1243
(let ((@x736 (monotonicity (quant-intro @x685 (= $x311 $x686)) @x733 (= $x324 (=> $x686 $x710)))))
blanchet@57170
  1244
(let ((@x745 (monotonicity (quant-intro @x685 (= $x311 $x686)) (trans @x736 (rewrite (= (=> $x686 $x710) $x738)) (= $x324 $x738)) (= (and $x311 $x324) $x743))))
blanchet@57170
  1245
(let ((@x748 (monotonicity (quant-intro (rewrite (= (=> $x302 $x304) $x665)) (= $x306 $x668)) @x745 (= $x326 (=> $x668 $x743)))))
blanchet@57170
  1246
(let ((@x757 (monotonicity (quant-intro (rewrite (= (=> $x302 $x304) $x665)) (= $x306 $x668)) (trans @x748 (rewrite (= (=> $x668 $x743) $x750)) (= $x326 $x750)) (= (and $x306 $x326) $x755))))
blanchet@57170
  1247
(let ((@x766 (trans (monotonicity @x757 (= $x328 (=> $x299 $x755))) (rewrite (= (=> $x299 $x755) $x762)) (= $x328 $x762))))
blanchet@57170
  1248
(let ((@x772 (monotonicity (monotonicity @x766 (= (and $x299 $x328) $x767)) (= $x330 (=> $x297 $x767)))))
blanchet@57170
  1249
(let ((@x781 (monotonicity (trans @x772 (rewrite (= (=> $x297 $x767) $x774)) (= $x330 $x774)) (= (and $x297 $x330) $x779))))
blanchet@57170
  1250
(let ((@x654 (quant-intro (rewrite (= (=> $x291 $x278) (or $x300 $x278))) (= $x293 $x652))))
blanchet@57170
  1251
(let ((@x659 (monotonicity @x654 (rewrite (= (and true true) true)) (= $x295 (and $x652 true)))))
blanchet@57170
  1252
(let ((@x784 (monotonicity (trans @x659 (rewrite (= (and $x652 true) $x652)) (= $x295 $x652)) @x781 (= $x332 (=> $x652 $x779)))))
blanchet@57170
  1253
(let ((@x793 (monotonicity @x654 (trans @x784 (rewrite (= (=> $x652 $x779) $x786)) (= $x332 $x786)) (= (and $x293 $x332) $x791))))
blanchet@57170
  1254
(let ((@x802 (trans (monotonicity @x793 (= $x334 (=> $x290 $x791))) (rewrite (= (=> $x290 $x791) $x798)) (= $x334 $x798))))
blanchet@57170
  1255
(let (($x633 (= (and $x256 (and $x258 (and $x261 (and $x266 (and $x276 $x280))))) $x632)))
blanchet@57170
  1256
(let ((@x622 (monotonicity (quant-intro (rewrite (= (=> $x272 $x274) $x608)) (= $x276 $x611)) (quant-intro (rewrite (= (=> $x277 $x278) $x614)) (= $x280 $x617)) (= (and $x276 $x280) $x620))))
blanchet@57170
  1257
(let ((@x628 (monotonicity (quant-intro (rewrite (= (=> $x179 $x259) $x602)) (= $x261 $x605)) (monotonicity @x622 (= (and $x266 (and $x276 $x280)) $x623)) (= (and $x261 (and $x266 (and $x276 $x280))) $x626))))
blanchet@57170
  1258
(let ((@x631 (monotonicity @x628 (= (and $x258 (and $x261 (and $x266 (and $x276 $x280)))) $x629))))
blanchet@57170
  1259
(let ((@x640 (monotonicity (monotonicity (monotonicity @x631 $x633) (= $x286 $x635)) (= $x287 (and true $x635)))))
blanchet@57170
  1260
(let ((@x646 (monotonicity (trans @x640 (rewrite (= (and true $x635) $x635)) (= $x287 $x635)) (= $x288 (and true $x635)))))
blanchet@57170
  1261
(let ((@x808 (monotonicity (trans @x646 (rewrite (= (and true $x635) $x635)) (= $x288 $x635)) (monotonicity @x802 (= (and $x290 $x334) $x803)) (= $x336 (=> $x635 $x803)))))
blanchet@57170
  1262
(let ((@x564 (monotonicity (rewrite (= (=> $x246 true) true)) (= $x248 (and $x246 true)))))
blanchet@57170
  1263
(let (($x231 (< ?x230 b_Infinity$)))
blanchet@57170
  1264
(let (($x241 (and $x231 $x156)))
blanchet@57170
  1265
(let (($x243 (=> $x241 (<= ?x233 (+ ?x230 ?x155)))))
blanchet@57170
  1266
(let ((@x547 (monotonicity (rewrite (= (+ ?x230 ?x155) ?x521)) (= (<= ?x233 (+ ?x230 ?x155)) $x545))))
blanchet@57170
  1267
(let ((@x556 (trans (monotonicity @x547 (= $x243 (=> $x241 $x545))) (rewrite (= (=> $x241 $x545) $x552)) (= $x243 $x552))))
blanchet@57170
  1268
(let ((@x571 (monotonicity (quant-intro @x556 (= $x244 $x557)) (trans @x564 (rewrite (= (and $x246 true) $x246)) (= $x248 $x246)) (= $x249 (=> $x557 $x246)))))
blanchet@57170
  1269
(let ((@x580 (monotonicity (quant-intro @x556 (= $x244 $x557)) (trans @x571 (rewrite (= (=> $x557 $x246) $x573)) (= $x249 $x573)) (= (and $x244 $x249) $x578))))
blanchet@57170
  1270
(let (($x238 (exists ((?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
  1271
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
  1272
(let ((?x235 (+ ?x230 ?x155)))
blanchet@57170
  1273
(let ((?x233 (fun_app$c v_b_SP_G_3$ ?0)))
blanchet@57170
  1274
(let (($x234 (< ?x230 ?x233)))
blanchet@57170
  1275
(and $x234 (= ?x233 ?x235))))))))
blanchet@57170
  1276
))
blanchet@57170
  1277
(let (($x232 (and $x132 $x231)))
blanchet@57170
  1278
(let (($x239 (=> $x232 $x238)))
blanchet@57170
  1279
(let ((@x526 (monotonicity (rewrite (= (+ ?x230 ?x155) ?x521)) (= (= ?x233 (+ ?x230 ?x155)) $x524))))
blanchet@57170
  1280
(let ((@x532 (quant-intro (monotonicity @x526 (= (and $x234 (= ?x233 (+ ?x230 ?x155))) $x527)) (= $x238 $x530))))
blanchet@57170
  1281
(let ((@x541 (trans (monotonicity @x532 (= $x239 (=> $x232 $x530))) (rewrite (= (=> $x232 $x530) $x537)) (= $x239 $x537))))
blanchet@57170
  1282
(let ((@x583 (monotonicity (quant-intro @x541 (= $x240 $x542)) @x580 (= $x251 (=> $x542 $x578)))))
blanchet@57170
  1283
(let ((@x592 (monotonicity (quant-intro @x541 (= $x240 $x542)) (trans @x583 (rewrite (= (=> $x542 $x578) $x585)) (= $x251 $x585)) (= (and $x240 $x251) $x590))))
blanchet@57170
  1284
(let (($x491 (= (and $x215 (and $x217 (and $x220 true))) (and $x215 (and $x217 $x220)))))
blanchet@57170
  1285
(let ((@x489 (monotonicity (rewrite (= (and $x220 true) $x220)) (= (and $x217 (and $x220 true)) (and $x217 $x220)))))
blanchet@57170
  1286
(let ((@x495 (monotonicity (monotonicity @x489 $x491) (= (and $x212 (and $x215 (and $x217 (and $x220 true)))) $x493))))
blanchet@57170
  1287
(let ((@x502 (trans (monotonicity @x495 (= $x225 (and true $x493))) (rewrite (= (and true $x493) $x493)) (= $x225 $x493))))
blanchet@57170
  1288
(let ((@x506 (trans (monotonicity @x502 (= $x226 (and true $x493))) (rewrite (= (and true $x493) $x493)) (= $x226 $x493))))
blanchet@57170
  1289
(let ((@x512 (monotonicity (monotonicity @x506 (= (and $x210 $x226) $x507)) (= $x228 (and true $x507)))))
blanchet@57170
  1290
(let ((@x518 (monotonicity (trans @x512 (rewrite (= (and true $x507) $x507)) (= $x228 $x507)) (= $x229 (and true $x507)))))
blanchet@57170
  1291
(let ((@x595 (monotonicity (trans @x518 (rewrite (= (and true $x507) $x507)) (= $x229 $x507)) @x592 (= $x253 (=> $x507 $x590)))))
blanchet@57170
  1292
(let ((@x817 (monotonicity (trans @x595 (rewrite (= (=> $x507 $x590) $x597)) (= $x253 $x597)) (trans @x808 (rewrite (= (=> $x635 $x803) $x810)) (= $x336 $x810)) (= (and $x253 $x336) $x815))))
blanchet@57170
  1293
(let (($x197 (exists ((?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?0))))
blanchet@57170
  1294
(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
  1295
(let ((?x187 (+ ?x174 ?x155)))
blanchet@57170
  1296
(let ((?x182 (fun_app$c v_b_SP_G_1$ ?0)))
blanchet@57170
  1297
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
  1298
(let (($x193 (< ?x174 ?x182)))
blanchet@57170
  1299
(and $x193 (and $x178 (= ?x182 ?x187))))))))))
blanchet@57170
  1300
))
blanchet@57170
  1301
(let (($x191 (< ?x174 b_Infinity$)))
blanchet@57170
  1302
(let (($x192 (and $x132 $x191)))
blanchet@57170
  1303
(let (($x198 (=> $x192 $x197)))
blanchet@57170
  1304
(let ((@x430 (monotonicity (rewrite (= (+ ?x174 ?x155) ?x410)) (= (= ?x182 (+ ?x174 ?x155)) $x428))))
blanchet@57170
  1305
(let ((@x436 (monotonicity (monotonicity @x430 (= (and $x178 (= ?x182 (+ ?x174 ?x155))) $x431)) (= (and $x193 (and $x178 (= ?x182 (+ ?x174 ?x155)))) $x434))))
blanchet@57170
  1306
(let ((@x442 (monotonicity (quant-intro @x436 (= $x197 $x437)) (= $x198 (=> $x192 $x437)))))
blanchet@57170
  1307
(let ((@x451 (quant-intro (trans @x442 (rewrite (= (=> $x192 $x437) $x444)) (= $x198 $x444)) (= $x199 $x449))))
blanchet@57170
  1308
(let ((@x458 (trans (monotonicity @x451 (= $x200 (and $x449 true))) (rewrite (= (and $x449 true) $x449)) (= $x200 $x449))))
blanchet@57170
  1309
(let (($x186 (and $x178 $x156)))
blanchet@57170
  1310
(let (($x189 (=> $x186 (<= ?x182 (+ ?x174 ?x155)))))
blanchet@57170
  1311
(let ((@x415 (monotonicity (rewrite (= (+ ?x174 ?x155) ?x410)) (= (<= ?x182 (+ ?x174 ?x155)) $x413))))
blanchet@57170
  1312
(let ((@x424 (trans (monotonicity @x415 (= $x189 (=> $x186 $x413))) (rewrite (= (=> $x186 $x413) $x420)) (= $x189 $x420))))
blanchet@57170
  1313
(let ((@x461 (monotonicity (quant-intro @x424 (= $x190 $x425)) @x458 (= (and $x190 $x200) $x459))))
blanchet@57170
  1314
(let ((@x464 (monotonicity (quant-intro (rewrite (= (=> $x181 $x183) $x404)) (= $x185 $x407)) @x461 (= (and $x185 (and $x190 $x200)) $x462))))
blanchet@57170
  1315
(let ((@x470 (monotonicity (monotonicity @x464 (= (and $x176 (and $x185 (and $x190 $x200))) $x465)) (= (and $x173 (and $x176 (and $x185 (and $x190 $x200)))) $x468))))
blanchet@57170
  1316
(let ((@x477 (trans (monotonicity @x470 (= $x205 (and true $x468))) (rewrite (= (and true $x468) $x468)) (= $x205 $x468))))
blanchet@57170
  1317
(let ((@x481 (trans (monotonicity @x477 (= $x206 (and true $x468))) (rewrite (= (and true $x468) $x468)) (= $x206 $x468))))
blanchet@57170
  1318
(let ((@x402 (quant-intro (rewrite (= (=> (and $x132 (< ?x128 b_Infinity$)) $x168) $x397)) (= $x170 $x400))))
blanchet@57170
  1319
(let ((@x820 (monotonicity (monotonicity @x402 @x481 (= (and $x170 $x206) $x482)) @x817 (= $x338 (=> $x482 $x815)))))
blanchet@57170
  1320
(let ((@x829 (monotonicity @x402 (trans @x820 (rewrite (= (=> $x482 $x815) $x822)) (= $x338 $x822)) (= (and $x170 $x338) $x827))))
blanchet@57170
  1321
(let ((@x395 (quant-intro (rewrite (= (=> (and $x136 $x156) $x159) $x390)) (= $x161 $x393))))
blanchet@57170
  1322
(let ((@x838 (trans (monotonicity @x395 @x829 (= $x340 (=> $x393 $x827))) (rewrite (= (=> $x393 $x827) $x834)) (= $x340 $x834))))
blanchet@57170
  1323
(let ((@x844 (monotonicity (quant-intro (rewrite (= (=> $x149 $x151) $x383)) (= $x153 $x386)) (monotonicity @x395 @x838 (= (and $x161 $x340) $x839)) (= $x342 (=> $x386 $x839)))))
blanchet@57170
  1324
(let ((@x853 (monotonicity (quant-intro (rewrite (= (=> $x149 $x151) $x383)) (= $x153 $x386)) (trans @x844 (rewrite (= (=> $x386 $x839) $x846)) (= $x342 $x846)) (= (and $x153 $x342) $x851))))
blanchet@57170
  1325
(let ((@x862 (trans (monotonicity @x853 (= $x344 (=> $x147 $x851))) (rewrite (= (=> $x147 $x851) $x858)) (= $x344 $x858))))
blanchet@57170
  1326
(let ((@x868 (monotonicity (monotonicity @x862 (= (and $x147 $x344) $x863)) (= $x346 (=> $x145 $x863)))))
blanchet@57170
  1327
(let ((@x877 (monotonicity (trans @x868 (rewrite (= (=> $x145 $x863) $x870)) (= $x346 $x870)) (= (and $x145 $x346) $x875))))
blanchet@57170
  1328
(let (($x368 (and $x354 (and $x360 $x138))))
blanchet@57170
  1329
(let (($x371 (and true $x368)))
blanchet@57170
  1330
(let ((@x362 (quant-intro (rewrite (= (=> $x132 (= ?x128 b_Infinity$)) $x357)) (= $x135 $x360))))
blanchet@57170
  1331
(let ((@x367 (monotonicity @x362 (rewrite (= (and $x138 true) $x138)) (= (and $x135 (and $x138 true)) (and $x360 $x138)))))
blanchet@57170
  1332
(let ((@x356 (quant-intro (rewrite (= (=> $x127 (= ?x128 0)) (or $x132 (= ?x128 0)))) (= $x131 $x354))))
blanchet@57170
  1333
(let ((@x370 (monotonicity @x356 @x367 (= (and $x131 (and $x135 (and $x138 true))) $x368))))
blanchet@57170
  1334
(let ((@x377 (trans (monotonicity @x370 (= $x142 $x371)) (rewrite (= $x371 $x368)) (= $x142 $x368))))
blanchet@57170
  1335
(let ((@x381 (trans (monotonicity @x377 (= $x143 $x371)) (rewrite (= $x371 $x368)) (= $x143 $x368))))
blanchet@57170
  1336
(let ((@x886 (trans (monotonicity @x381 @x877 (= $x348 (=> $x368 $x875))) (rewrite (= (=> $x368 $x875) $x882)) (= $x348 $x882))))
blanchet@57170
  1337
(let ((@x1411 (trans (monotonicity @x886 (= $x349 (not $x882))) (monotonicity @x1406 (= (not $x882) $x1407)) (= $x349 $x1407))))
blanchet@57170
  1338
(let ((@x1413 (not-or-elim (mp (asserted $x349) @x1411 $x1407) $x890)))
blanchet@57170
  1339
(let ((@x1463 (mp~ (and-elim @x1413 $x360) (nnf-pos (refl (~ $x357 $x357)) (~ $x360 $x360)) $x360)))
blanchet@57170
  1340
(let ((@x3498 (mp @x1463 (quant-intro (refl (= $x357 $x357)) (= $x360 $x3493)) $x3493)))
blanchet@57170
  1341
(let ((@x6489 (rewrite (= (or (not $x3493) (or $x1538 $x5616)) (or (not $x3493) $x1538 $x5616)))))
blanchet@57170
  1342
(let ((@x5602 (mp ((_ quant-inst ?v0!5) (or (not $x3493) (or $x1538 $x5616))) @x6489 (or (not $x3493) $x1538 $x5616))))
blanchet@57170
  1343
(let ((@x5777 (unit-resolution (hypothesis $x6457) (mp (unit-resolution @x5602 @x3498 (hypothesis $x1539) $x5616) @x5778 $x5625) false)))
blanchet@57170
  1344
(let ((@x5735 (unit-resolution (lemma @x5777 (or $x5625 $x1538)) (unit-resolution ((_ th-lemma arith triangle-eq) (or $x6457 $x1543)) @x6514 $x6457) @x6246 false)))
blanchet@57170
  1345
(let (($x3544 (not $x3541)))
blanchet@57170
  1346
(let (($x3827 (or $x3544 $x3824)))
blanchet@57170
  1347
(let (($x3830 (not $x3827)))
blanchet@57170
  1348
(let (($x3524 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(!(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
  1349
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
  1350
(let (($x933 (>= (+ ?x128 (* (- 1) (v_b_SP_G_0$ ?v0)) ?x155) 0)))
blanchet@57170
  1351
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
  1352
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  1353
(let (($x137 (not $x136)))
blanchet@57170
  1354
(or $x137 $x922 $x933))))))) :pattern ( (pair$ ?v1 ?v0) )))
blanchet@57170
  1355
))
blanchet@57170
  1356
(let (($x3529 (not $x3524)))
blanchet@57170
  1357
(let (($x3833 (or $x3529 $x3830)))
blanchet@57170
  1358
(let (($x3836 (not $x3833)))
blanchet@57170
  1359
(let ((?x1522 (v_b_SP_G_0$ ?v0!4)))
blanchet@57170
  1360
(let ((?x1523 (* (- 1) ?x1522)))
blanchet@57170
  1361
(let ((?x1521 (v_b_SP_G_0$ ?v1!3)))
blanchet@57170
  1362
(let ((?x1513 (pair$ ?v1!3 ?v0!4)))
blanchet@57170
  1363
(let ((?x1514 (b_G$ ?x1513)))
blanchet@57170
  1364
(let ((?x2045 (+ ?x1514 ?x1521 ?x1523)))
blanchet@57170
  1365
(let (($x2048 (>= ?x2045 0)))
blanchet@57170
  1366
(let (($x1517 (<= (+ b_Infinity$ (* (- 1) ?x1514)) 0)))
blanchet@57170
  1367
(let (($x1512 (v_b_Visited_G_0$ ?v1!3)))
blanchet@57170
  1368
(let (($x2394 (not $x1512)))
blanchet@57170
  1369
(let (($x2409 (or $x2394 $x1517 $x2048)))
blanchet@57170
  1370
(let (($x3500 (forall ((?v0 B_Vertex$) )(!(let (($x136 (v_b_Visited_G_0$ ?v0)))
blanchet@57170
  1371
(not $x136)) :pattern ( (v_b_Visited_G_0$ ?v0) )))
blanchet@57170
  1372
))
blanchet@57170
  1373
(let ((@x1468 (mp~ (and-elim @x1413 $x138) (nnf-pos (refl (~ $x137 $x137)) (~ $x138 $x138)) $x138)))
blanchet@57170
  1374
(let ((@x3505 (mp @x1468 (quant-intro (refl (= $x137 $x137)) (= $x138 $x3500)) $x3500)))
blanchet@57170
  1375
(let ((@x3073 (unit-resolution ((_ quant-inst ?v1!3) (or (not $x3500) $x2394)) @x3505 (hypothesis $x1512) false)))
blanchet@57170
  1376
(let (($x2414 (not $x2409)))
blanchet@57170
  1377
(let (($x3839 (or $x2414 $x3836)))
blanchet@57170
  1378
(let (($x3842 (not $x3839)))
blanchet@57170
  1379
(let (($x3515 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(!(let (($x907 (>= (+ (v_b_SP_G_0$ ?v1) (* (- 1) (v_b_SP_G_0$ ?v0))) 0)))
blanchet@57170
  1380
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  1381
(or $x136 (not (v_b_Visited_G_0$ ?v0)) $x907))) :pattern ( (v_b_Visited_G_0$ ?v1) (v_b_Visited_G_0$ ?v0) )))
blanchet@57170
  1382
))
blanchet@57170
  1383
(let (($x3520 (not $x3515)))
blanchet@57170
  1384
(let (($x3845 (or $x3520 $x3842)))
blanchet@57170
  1385
(let (($x3848 (not $x3845)))
blanchet@57170
  1386
(let (($x1498 (>= (+ (v_b_SP_G_0$ ?v1!1) (* (- 1) (v_b_SP_G_0$ ?v0!2))) 0)))
blanchet@57170
  1387
(let (($x1491 (v_b_Visited_G_0$ ?v0!2)))
blanchet@57170
  1388
(let (($x2348 (not $x1491)))
blanchet@57170
  1389
(let (($x1489 (v_b_Visited_G_0$ ?v1!1)))
blanchet@57170
  1390
(let (($x2363 (or $x1489 $x2348 $x1498)))
blanchet@57170
  1391
(let (($x2368 (not $x2363)))
blanchet@57170
  1392
(let (($x3851 (or $x2368 $x3848)))
blanchet@57170
  1393
(let (($x3854 (not $x3851)))
blanchet@57170
  1394
(let (($x3506 (forall ((?v0 B_Vertex$) )(!(let ((?x128 (v_b_SP_G_0$ ?v0)))
blanchet@57170
  1395
(>= ?x128 0)) :pattern ( (v_b_SP_G_0$ ?v0) )))
blanchet@57170
  1396
))
blanchet@57170
  1397
(let (($x3511 (not $x3506)))
blanchet@57170
  1398
(let (($x3857 (or $x3511 $x3854)))
blanchet@57170
  1399
(let (($x3860 (not $x3857)))
blanchet@57170
  1400
(let ((?x1475 (v_b_SP_G_0$ ?v0!0)))
blanchet@57170
  1401
(let (($x1476 (>= ?x1475 0)))
blanchet@57170
  1402
(let (($x1477 (not $x1476)))
blanchet@57170
  1403
(let ((@x5848 (hypothesis $x1477)))
blanchet@57170
  1404
(let (($x5440 (<= ?x1475 0)))
blanchet@57170
  1405
(let (($x86 (<= b_Infinity$ 0)))
blanchet@57170
  1406
(let (($x87 (not $x86)))
blanchet@57170
  1407
(let ((@x90 (mp (asserted (< 0 b_Infinity$)) (rewrite (= (< 0 b_Infinity$) $x87)) $x87)))
blanchet@57170
  1408
(let (($x5734 (= b_Infinity$ ?x1475)))
blanchet@57170
  1409
(let ((@x4994 (symm (commutativity (= $x5734 (= ?x1475 b_Infinity$))) (= (= ?x1475 b_Infinity$) $x5734))))
blanchet@57170
  1410
(let (($x5461 (= ?x1475 b_Infinity$)))
blanchet@57170
  1411
(let (($x5589 (= ?v0!0 b_Source$)))
blanchet@57170
  1412
(let (($x4695 (not $x5589)))
blanchet@57170
  1413
(let ((@x5096 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x1475 0)) $x1476)) @x5848 (not (= ?x1475 0)))))
blanchet@57170
  1414
(let (($x3487 (forall ((?v0 B_Vertex$) )(!(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1415
(let (($x132 (not $x127)))
blanchet@57170
  1416
(or $x132 (= (v_b_SP_G_0$ ?v0) 0)))) :pattern ( (v_b_SP_G_0$ ?v0) )))
blanchet@57170
  1417
))
blanchet@57170
  1418
(let ((@x3491 (quant-intro (refl (= (or $x132 (= ?x128 0)) (or $x132 (= ?x128 0)))) (= $x354 $x3487))))
blanchet@57170
  1419
(let ((@x1457 (nnf-pos (refl (~ (or $x132 (= ?x128 0)) (or $x132 (= ?x128 0)))) (~ $x354 $x354))))
blanchet@57170
  1420
(let ((@x3492 (mp (mp~ (and-elim @x1413 $x354) @x1457 $x354) @x3491 $x3487)))
blanchet@57170
  1421
(let (($x5571 (= (or (not $x3487) (or $x4695 (= ?x1475 0))) (or (not $x3487) $x4695 (= ?x1475 0)))))
blanchet@57170
  1422
(let ((@x5058 (mp ((_ quant-inst ?v0!0) (or (not $x3487) (or $x4695 (= ?x1475 0)))) (rewrite $x5571) (or (not $x3487) $x4695 (= ?x1475 0)))))
blanchet@57170
  1423
(let ((@x5156 (rewrite (= (or (not $x3493) (or $x5589 $x5461)) (or (not $x3493) $x5589 $x5461)))))
blanchet@57170
  1424
(let ((@x5542 (mp ((_ quant-inst ?v0!0) (or (not $x3493) (or $x5589 $x5461))) @x5156 (or (not $x3493) $x5589 $x5461))))
blanchet@57170
  1425
(let ((@x5003 (mp (unit-resolution @x5542 @x3498 (unit-resolution @x5058 @x3492 @x5096 $x4695) $x5461) @x4994 $x5734)))
blanchet@57170
  1426
(let ((@x5457 ((_ th-lemma arith triangle-eq) (or (not $x5734) (<= (+ b_Infinity$ (* (- 1) ?x1475)) 0)))))
blanchet@57170
  1427
(let ((@x5462 (unit-resolution @x5457 @x5003 (<= (+ b_Infinity$ (* (- 1) ?x1475)) 0))))
blanchet@57170
  1428
(let ((@x5446 (lemma ((_ th-lemma arith farkas 1 -1 1) (hypothesis $x5440) @x5462 @x90 false) (or (not $x5440) $x1476))))
blanchet@57170
  1429
(let ((@x6353 (unit-resolution @x5446 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x5440 $x1476)) @x5848 $x5440) @x5848 false)))
blanchet@57170
  1430
(let (($x3863 (or $x1477 $x3860)))
blanchet@57170
  1431
(let (($x3866 (not $x3863)))
blanchet@57170
  1432
(let (($x3869 (or $x869 $x3866)))
blanchet@57170
  1433
(let (($x3872 (not $x3869)))
blanchet@57170
  1434
(let (($x5983 (not $x3487)))
blanchet@57170
  1435
(let (($x3194 (or $x5983 $x145)))
blanchet@57170
  1436
(let ((@x5448 (monotonicity (rewrite (= (= b_Source$ b_Source$) true)) (= (not (= b_Source$ b_Source$)) (not true)))))
blanchet@57170
  1437
(let ((@x5820 (trans @x5448 (rewrite (= (not true) false)) (= (not (= b_Source$ b_Source$)) false))))
blanchet@57170
  1438
(let ((@x5657 (monotonicity @x5820 (= (or (not (= b_Source$ b_Source$)) $x145) (or false $x145)))))
blanchet@57170
  1439
(let ((@x5707 (trans @x5657 (rewrite (= (or false $x145) $x145)) (= (or (not (= b_Source$ b_Source$)) $x145) $x145))))
blanchet@57170
  1440
(let ((@x5373 (monotonicity @x5707 (= (or $x5983 (or (not (= b_Source$ b_Source$)) $x145)) $x3194))))
blanchet@57170
  1441
(let ((@x5431 (trans @x5373 (rewrite (= $x3194 $x3194)) (= (or $x5983 (or (not (= b_Source$ b_Source$)) $x145)) $x3194))))
blanchet@57170
  1442
(let ((@x5763 (mp ((_ quant-inst b_Source$) (or $x5983 (or (not (= b_Source$ b_Source$)) $x145))) @x5431 $x3194)))
blanchet@57170
  1443
(let (($x3875 (or $x869 $x3872)))
blanchet@57170
  1444
(let (($x2848 (forall ((?v1 B_Vertex$) )(let ((?x1911 (v_b_SP_G_2$ ?v0!20)))
blanchet@57170
  1445
(let ((?x1912 (* (- 1) ?x1911)))
blanchet@57170
  1446
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
  1447
(let (($x2242 (= (+ ?x273 ?x1912 (b_G$ (pair$ ?v1 ?v0!20))) 0)))
blanchet@57170
  1448
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
  1449
(let (($x300 (not $x291)))
blanchet@57170
  1450
(or (>= (+ ?x273 ?x1912) 0) $x300 (not $x2242)))))))))
blanchet@57170
  1451
))
blanchet@57170
  1452
(let (($x2833 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x303 (v_b_SP_G_2$ ?v0)))
blanchet@57170
  1453
(let ((?x1263 (* (- 1) ?x303)))
blanchet@57170
  1454
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
  1455
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
  1456
(let (($x1282 (>= (+ ?x155 ?x273 ?x1263) 0)))
blanchet@57170
  1457
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
  1458
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
  1459
(let (($x300 (not $x291)))
blanchet@57170
  1460
(or $x300 $x922 $x1282))))))))))
blanchet@57170
  1461
))
blanchet@57170
  1462
(let (($x2857 (not (or (not $x2833) $x1909 $x1914 (not $x2848)))))
blanchet@57170
  1463
(let (($x2862 (or $x2811 $x2857)))
blanchet@57170
  1464
(let (($x2788 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let (($x1262 (>= (+ (v_b_SP_G_2$ ?v1) (* (- 1) (v_b_SP_G_2$ ?v0))) 0)))
blanchet@57170
  1465
(let (($x301 (fun_app$ v_b_Visited_G_2$ ?v0)))
blanchet@57170
  1466
(let (($x2768 (not $x301)))
blanchet@57170
  1467
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
  1468
(or $x291 $x2768 $x1262))))))
blanchet@57170
  1469
))
blanchet@57170
  1470
(let (($x2871 (not (or (not $x2788) (not $x2862)))))
blanchet@57170
  1471
(let (($x2876 (or $x2765 $x2871)))
blanchet@57170
  1472
(let (($x2884 (not (or $x1259 (not $x2876)))))
blanchet@57170
  1473
(let (($x2889 (or $x1848 $x2884)))
blanchet@57170
  1474
(let (($x2897 (not (or $x773 (not $x2889)))))
blanchet@57170
  1475
(let (($x2902 (or $x773 $x2897)))
blanchet@57170
  1476
(let (($x2910 (not (or $x785 (not $x2902)))))
blanchet@57170
  1477
(let (($x2915 (or $x1830 $x2910)))
blanchet@57170
  1478
(let (($x2923 (not (or $x1250 (not $x2915)))))
blanchet@57170
  1479
(let (($x2928 (or $x1813 $x2923)))
blanchet@57170
  1480
(let (($x2742 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
  1481
(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
  1482
(let (($x278 (= ?x273 ?x174)))
blanchet@57170
  1483
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
  1484
(let ((?x1173 (* (- 1) ?x257)))
blanchet@57170
  1485
(let (($x1175 (<= (+ ?x174 ?x1173 (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0)))) 0)))
blanchet@57170
  1486
(let (($x1169 (<= (+ b_Infinity$ (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0)))) 0)))
blanchet@57170
  1487
(let (($x2717 (or $x1169 $x1175)))
blanchet@57170
  1488
(let (($x2718 (not $x2717)))
blanchet@57170
  1489
(or $x2718 $x278)))))))))))
blanchet@57170
  1490
))
blanchet@57170
  1491
(let (($x2736 (forall ((?v0 B_Vertex$) )(let ((?x273 (v_b_SP_G_2$ ?v0)))
blanchet@57170
  1492
(let ((?x1186 (* (- 1) ?x273)))
blanchet@57170
  1493
(let ((?x268 (b_G$ (pair$ v_b_v_G_1$ ?v0))))
blanchet@57170
  1494
(let ((?x257 (fun_app$c v_b_SP_G_1$ v_b_v_G_1$)))
blanchet@57170
  1495
(let (($x1185 (= (+ ?x257 ?x268 ?x1186) 0)))
blanchet@57170
  1496
(let (($x1175 (<= (+ (fun_app$c v_b_SP_G_1$ ?v0) (* (- 1) ?x257) (* (- 1) ?x268)) 0)))
blanchet@57170
  1497
(let (($x1169 (<= (+ b_Infinity$ (* (- 1) ?x268)) 0)))
blanchet@57170
  1498
(or $x1169 $x1175 $x1185)))))))))
blanchet@57170
  1499
))
blanchet@57170
  1500
(let (($x2939 (or $x1773 $x1778 $x255 $x1213 (not $x1209) $x2935 (not $x2736) (not $x2742) (not $x2928))))
blanchet@57170
  1501
(let (($x2940 (not $x2939)))
blanchet@57170
  1502
(let (($x2672 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
  1503
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
  1504
(let (($x1140 (>= (+ ?x155 ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ ?v0))) 0)))
blanchet@57170
  1505
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
  1506
(let (($x1099 (<= (+ b_Infinity$ (* (- 1) ?x230)) 0)))
blanchet@57170
  1507
(or $x1099 $x922 $x1140)))))))
blanchet@57170
  1508
))
blanchet@57170
  1509
(let (($x2680 (not (or (not $x2672) $x246))))
blanchet@57170
  1510
(let (($x2685 (or $x2650 $x2680)))
blanchet@57170
  1511
(let (($x2628 (forall ((?v0 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
  1512
(let ((?x2191 (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!9 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!9 ?v0) ?v0))))))
blanchet@57170
  1513
(let (($x2192 (= ?x2191 0)))
blanchet@57170
  1514
(let (($x2176 (<= (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!9 ?v0)))) 0)))
blanchet@57170
  1515
(let (($x2617 (not (or $x2176 (not $x2192)))))
blanchet@57170
  1516
(let (($x1099 (<= (+ b_Infinity$ (* (- 1) ?x230)) 0)))
blanchet@57170
  1517
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1518
(or $x127 $x1099 $x2617)))))))))
blanchet@57170
  1519
))
blanchet@57170
  1520
(let (($x2694 (not (or (not $x2628) (not $x2685)))))
blanchet@57170
  1521
(let (($x2591 (forall ((?v1 B_Vertex$) )(let ((?x1661 (fun_app$c v_b_SP_G_3$ ?v0!8)))
blanchet@57170
  1522
(let ((?x1662 (* (- 1) ?x1661)))
blanchet@57170
  1523
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
  1524
(let (($x2148 (= (+ ?x230 ?x1662 (b_G$ (pair$ ?v1 ?v0!8))) 0)))
blanchet@57170
  1525
(or (>= (+ ?x230 ?x1662) 0) (not $x2148)))))))
blanchet@57170
  1526
))
blanchet@57170
  1527
(let (($x2599 (not (or $x1659 $x1664 (not $x2591)))))
blanchet@57170
  1528
(let (($x2699 (or $x2599 $x2694)))
blanchet@57170
  1529
(let (($x2576 (forall ((?v0 B_Vertex$) )(let (($x1002 (<= (+ b_Infinity$ (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
  1530
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
  1531
(or $x178 $x1002))))
blanchet@57170
  1532
))
blanchet@57170
  1533
(let (($x2712 (not (or (not $x2576) $x2706 $x2707 $x2708 $x2709 (not $x2699)))))
blanchet@57170
  1534
(let (($x2945 (or $x2712 $x2940)))
blanchet@57170
  1535
(let (($x2562 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
  1536
(let ((?x2128 (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ (?v1!7 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!7 ?v0) ?v0))))))
blanchet@57170
  1537
(let (($x2129 (= ?x2128 0)))
blanchet@57170
  1538
(let (($x2113 (<= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ (?v1!7 ?v0)))) 0)))
blanchet@57170
  1539
(let (($x2551 (not (or $x2113 (not (fun_app$ v_b_Visited_G_1$ (?v1!7 ?v0))) (not $x2129)))))
blanchet@57170
  1540
(let (($x1002 (<= (+ b_Infinity$ (* (- 1) ?x174)) 0)))
blanchet@57170
  1541
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1542
(or $x127 $x1002 $x2551)))))))))
blanchet@57170
  1543
))
blanchet@57170
  1544
(let (($x2534 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
  1545
(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
  1546
(let (($x990 (>= (+ ?x155 ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
  1547
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
  1548
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
  1549
(let (($x179 (not $x178)))
blanchet@57170
  1550
(or $x179 $x922 $x990))))))))
blanchet@57170
  1551
))
blanchet@57170
  1552
(let (($x2512 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v1)))
blanchet@57170
  1553
(let (($x1015 (>= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
  1554
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v1)))
blanchet@57170
  1555
(or $x178 (not (fun_app$ v_b_Visited_G_1$ ?v0)) $x1015)))))
blanchet@57170
  1556
))
blanchet@57170
  1557
(let (($x2489 (forall ((?v0 B_Vertex$) )(let ((?x128 (v_b_SP_G_0$ ?v0)))
blanchet@57170
  1558
(let ((?x2090 (+ ?x128 (* (- 1) (v_b_SP_G_0$ (?v1!6 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!6 ?v0) ?v0))))))
blanchet@57170
  1559
(let (($x2091 (= ?x2090 0)))
blanchet@57170
  1560
(let (($x2075 (<= (+ ?x128 (* (- 1) (v_b_SP_G_0$ (?v1!6 ?v0)))) 0)))
blanchet@57170
  1561
(let (($x2478 (not (or $x2075 (not (v_b_Visited_G_0$ (?v1!6 ?v0))) (not $x2091)))))
blanchet@57170
  1562
(let (($x947 (<= (+ b_Infinity$ (* (- 1) ?x128)) 0)))
blanchet@57170
  1563
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1564
(or $x127 $x947 $x2478)))))))))
blanchet@57170
  1565
))
blanchet@57170
  1566
(let (($x2958 (or (not $x2489) $x2952 (not $x1051) (not $x2512) (not $x2534) (not $x2562) (not $x2945))))
blanchet@57170
  1567
(let (($x2959 (not $x2958)))
blanchet@57170
  1568
(let (($x2451 (forall ((?v1 B_Vertex$) )(let ((?x1540 (v_b_SP_G_0$ ?v0!5)))
blanchet@57170
  1569
(let ((?x1541 (* (- 1) ?x1540)))
blanchet@57170
  1570
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
  1571
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  1572
(let (($x137 (not $x136)))
blanchet@57170
  1573
(or (>= (+ ?x128 ?x1541) 0) $x137 (not (= (+ ?x128 ?x1541 (b_G$ (pair$ ?v1 ?v0!5))) 0)))))))))
blanchet@57170
  1574
))
blanchet@57170
  1575
(let (($x2459 (not (or $x1538 $x1543 (not $x2451)))))
blanchet@57170
  1576
(let (($x2964 (or $x2459 $x2959)))
blanchet@57170
  1577
(let (($x2436 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x155 (b_G$ (pair$ ?v1 ?v0))))
blanchet@57170
  1578
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
  1579
(let (($x933 (>= (+ ?x128 (* (- 1) (v_b_SP_G_0$ ?v0)) ?x155) 0)))
blanchet@57170
  1580
(let (($x922 (<= (+ b_Infinity$ (* (- 1) ?x155)) 0)))
blanchet@57170
  1581
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  1582
(let (($x137 (not $x136)))
blanchet@57170
  1583
(or $x137 $x922 $x933))))))))
blanchet@57170
  1584
))
blanchet@57170
  1585
(let (($x2973 (not (or (not $x2436) (not $x2964)))))
blanchet@57170
  1586
(let (($x2978 (or $x2414 $x2973)))
blanchet@57170
  1587
(let (($x2391 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let (($x907 (>= (+ (v_b_SP_G_0$ ?v1) (* (- 1) (v_b_SP_G_0$ ?v0))) 0)))
blanchet@57170
  1588
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  1589
(or $x136 (not (v_b_Visited_G_0$ ?v0)) $x907))))
blanchet@57170
  1590
))
blanchet@57170
  1591
(let (($x2987 (not (or (not $x2391) (not $x2978)))))
blanchet@57170
  1592
(let (($x2992 (or $x2368 $x2987)))
blanchet@57170
  1593
(let (($x3000 (not (or $x902 (not $x2992)))))
blanchet@57170
  1594
(let (($x3005 (or $x1477 $x3000)))
blanchet@57170
  1595
(let (($x3013 (not (or $x869 (not $x3005)))))
blanchet@57170
  1596
(let (($x3018 (or $x869 $x3013)))
blanchet@57170
  1597
(let (($x2837 (or (>= (+ ?x273 (* (- 1) ?x1911)) 0) $x300 (not (= (+ ?x273 (* (- 1) ?x1911) (b_G$ (pair$ ?0 ?v0!20))) 0)))))
blanchet@57170
  1598
(let ((@x3736 (monotonicity (quant-intro (refl (= $x2837 $x2837)) (= $x2848 $x3729)) (= (not $x2848) $x3734))))
blanchet@57170
  1599
(let ((@x3724 (quant-intro (refl (= (or $x300 $x922 $x1282) (or $x300 $x922 $x1282))) (= $x2833 $x3720))))
blanchet@57170
  1600
(let ((@x3739 (monotonicity (monotonicity @x3724 (= (not $x2833) $x3725)) @x3736 (= (or (not $x2833) $x1909 $x1914 (not $x2848)) $x3737))))
blanchet@57170
  1601
(let ((@x3748 (monotonicity (monotonicity (monotonicity @x3739 (= $x2857 $x3740)) (= $x2862 $x3743)) (= (not $x2862) $x3746))))
blanchet@57170
  1602
(let ((@x3716 (quant-intro (refl (= (or $x291 (not $x301) $x1262) (or $x291 (not $x301) $x1262))) (= $x2788 $x3712))))
blanchet@57170
  1603
(let ((@x3751 (monotonicity (monotonicity @x3716 (= (not $x2788) $x3717)) @x3748 (= (or (not $x2788) (not $x2862)) $x3749))))
blanchet@57170
  1604
(let ((@x3760 (monotonicity (monotonicity (monotonicity @x3751 (= $x2871 $x3752)) (= $x2876 $x3755)) (= (not $x2876) $x3758))))
blanchet@57170
  1605
(let ((@x3707 (quant-intro (refl (= (>= ?x273 0) (>= ?x273 0))) (= $x1256 $x3703))))
blanchet@57170
  1606
(let ((@x3763 (monotonicity (monotonicity @x3707 (= $x1259 $x3708)) @x3760 (= (or $x1259 (not $x2876)) $x3761))))
blanchet@57170
  1607
(let ((@x3772 (monotonicity (monotonicity (monotonicity @x3763 (= $x2884 $x3764)) (= $x2889 $x3767)) (= (not $x2889) $x3770))))
blanchet@57170
  1608
(let ((@x3778 (monotonicity (monotonicity @x3772 (= (or $x773 (not $x2889)) $x3773)) (= $x2897 $x3776))))
blanchet@57170
  1609
(let ((@x3784 (monotonicity (monotonicity @x3778 (= $x2902 $x3779)) (= (not $x2902) $x3782))))
blanchet@57170
  1610
(let ((@x3699 (quant-intro (refl (= (or $x300 $x278) (or $x300 $x278))) (= $x652 $x3695))))
blanchet@57170
  1611
(let ((@x3787 (monotonicity (monotonicity @x3699 (= $x785 $x3700)) @x3784 (= (or $x785 (not $x2902)) $x3785))))
blanchet@57170
  1612
(let ((@x3796 (monotonicity (monotonicity (monotonicity @x3787 (= $x2910 $x3788)) (= $x2915 $x3791)) (= (not $x2915) $x3794))))
blanchet@57170
  1613
(let ((@x3693 (monotonicity (quant-intro (refl (= $x1243 $x1243)) (= $x1247 $x3686)) (= $x1250 $x3691))))
blanchet@57170
  1614
(let ((@x3802 (monotonicity (monotonicity @x3693 @x3796 (= (or $x1250 (not $x2915)) $x3797)) (= $x2923 $x3800))))
blanchet@57170
  1615
(let ((@x3808 (monotonicity (monotonicity @x3802 (= $x2928 $x3803)) (= (not $x2928) $x3806))))
blanchet@57170
  1616
(let ((@x3680 (refl (= (or (not (or $x1169 $x1175)) $x278) (or (not (or $x1169 $x1175)) $x278)))))
blanchet@57170
  1617
(let ((@x3685 (monotonicity (quant-intro @x3680 (= $x2742 $x3678)) (= (not $x2742) $x3683))))
blanchet@57170
  1618
(let ((@x3674 (quant-intro (refl (= (or $x1169 $x1175 $x1185) (or $x1169 $x1175 $x1185))) (= $x2736 $x3670))))
blanchet@57170
  1619
(let ((@x3667 (monotonicity (quant-intro (refl (= $x1206 $x1206)) (= $x1209 $x3660)) (= (not $x1209) $x3665))))
blanchet@57170
  1620
(let ((@x3811 (monotonicity @x3667 (monotonicity @x3674 (= (not $x2736) $x3675)) @x3685 @x3808 (= $x2939 $x3809))))
blanchet@57170
  1621
(let ((@x3626 (quant-intro (refl (= (or $x1099 $x922 $x1140) (or $x1099 $x922 $x1140))) (= $x2672 $x3622))))
blanchet@57170
  1622
(let ((@x3632 (monotonicity (monotonicity @x3626 (= (not $x2672) $x3627)) (= (or (not $x2672) $x246) $x3630))))
blanchet@57170
  1623
(let ((@x3641 (monotonicity (monotonicity (monotonicity @x3632 (= $x2680 $x3633)) (= $x2685 $x3636)) (= (not $x2685) $x3639))))
blanchet@57170
  1624
(let ((?x2191 (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!9 ?0))) (* (- 1) (b_G$ (pair$ (?v1!9 ?0) ?0))))))
blanchet@57170
  1625
(let (($x2192 (= ?x2191 0)))
blanchet@57170
  1626
(let (($x2176 (<= (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!9 ?0)))) 0)))
blanchet@57170
  1627
(let (($x2617 (not (or $x2176 (not $x2192)))))
blanchet@57170
  1628
(let (($x2623 (or $x127 $x1099 $x2617)))
blanchet@57170
  1629
(let ((@x3621 (monotonicity (quant-intro (refl (= $x2623 $x2623)) (= $x2628 $x3614)) (= (not $x2628) $x3619))))
blanchet@57170
  1630
(let ((@x3647 (monotonicity (monotonicity @x3621 @x3641 (= (or (not $x2628) (not $x2685)) $x3642)) (= $x2694 $x3645))))
blanchet@57170
  1631
(let ((?x1661 (fun_app$c v_b_SP_G_3$ ?v0!8)))
blanchet@57170
  1632
(let ((?x1662 (* (- 1) ?x1661)))
blanchet@57170
  1633
(let (($x2148 (= (+ ?x230 ?x1662 (b_G$ (pair$ ?0 ?v0!8))) 0)))
blanchet@57170
  1634
(let (($x2580 (or (>= (+ ?x230 ?x1662) 0) (not $x2148))))
blanchet@57170
  1635
(let ((@x3607 (monotonicity (quant-intro (refl (= $x2580 $x2580)) (= $x2591 $x3600)) (= (not $x2591) $x3605))))
blanchet@57170
  1636
(let ((@x3613 (monotonicity (monotonicity @x3607 (= (or $x1659 $x1664 (not $x2591)) $x3608)) (= $x2599 $x3611))))
blanchet@57170
  1637
(let ((@x3653 (monotonicity (monotonicity @x3613 @x3647 (= $x2699 $x3648)) (= (not $x2699) $x3651))))
blanchet@57170
  1638
(let ((@x3594 (quant-intro (refl (= (or $x178 $x1002) (or $x178 $x1002))) (= $x2576 $x3590))))
blanchet@57170
  1639
(let ((@x3656 (monotonicity (monotonicity @x3594 (= (not $x2576) $x3595)) @x3653 (= (or (not $x2576) $x2706 $x2707 $x2708 $x2709 (not $x2699)) $x3654))))
blanchet@57170
  1640
(let ((@x3817 (monotonicity (monotonicity @x3656 (= $x2712 $x3657)) (monotonicity @x3811 (= $x2940 $x3812)) (= $x2945 $x3815))))
blanchet@57170
  1641
(let ((?x2128 (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ (?v1!7 ?0))) (* (- 1) (b_G$ (pair$ (?v1!7 ?0) ?0))))))
blanchet@57170
  1642
(let (($x2129 (= ?x2128 0)))
blanchet@57170
  1643
(let (($x2113 (<= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ (?v1!7 ?0)))) 0)))
blanchet@57170
  1644
(let (($x2551 (not (or $x2113 (not (fun_app$ v_b_Visited_G_1$ (?v1!7 ?0))) (not $x2129)))))
blanchet@57170
  1645
(let (($x2557 (or $x127 $x1002 $x2551)))
blanchet@57170
  1646
(let ((@x3588 (monotonicity (quant-intro (refl (= $x2557 $x2557)) (= $x2562 $x3581)) (= (not $x2562) $x3586))))
blanchet@57170
  1647
(let ((@x3577 (quant-intro (refl (= (or $x179 $x922 $x990) (or $x179 $x922 $x990))) (= $x2534 $x3573))))
blanchet@57170
  1648
(let ((@x3569 (quant-intro (refl (= (or $x178 (not $x180) $x1015) (or $x178 (not $x180) $x1015))) (= $x2512 $x3565))))
blanchet@57170
  1649
(let ((@x3560 (quant-intro (refl (= (>= ?x174 0) (>= ?x174 0))) (= $x1051 $x3556))))
blanchet@57170
  1650
(let ((?x2090 (+ ?x128 (* (- 1) (v_b_SP_G_0$ (?v1!6 ?0))) (* (- 1) (b_G$ (pair$ (?v1!6 ?0) ?0))))))
blanchet@57170
  1651
(let (($x2091 (= ?x2090 0)))
blanchet@57170
  1652
(let (($x2075 (<= (+ ?x128 (* (- 1) (v_b_SP_G_0$ (?v1!6 ?0)))) 0)))
blanchet@57170
  1653
(let (($x2478 (not (or $x2075 (not (v_b_Visited_G_0$ (?v1!6 ?0))) (not $x2091)))))
blanchet@57170
  1654
(let (($x947 (<= (+ b_Infinity$ (* (- 1) ?x128)) 0)))
blanchet@57170
  1655
(let (($x2484 (or $x127 $x947 $x2478)))
blanchet@57170
  1656
(let ((@x3554 (monotonicity (quant-intro (refl (= $x2484 $x2484)) (= $x2489 $x3547)) (= (not $x2489) $x3552))))
blanchet@57170
  1657
(let ((@x3823 (monotonicity @x3554 (monotonicity @x3560 (= (not $x1051) $x3561)) (monotonicity @x3569 (= (not $x2512) $x3570)) (monotonicity @x3577 (= (not $x2534) $x3578)) @x3588 (monotonicity @x3817 (= (not $x2945) $x3818)) (= $x2958 $x3821))))
blanchet@57170
  1658
(let (($x2440 (or (>= (+ ?x128 ?x1541) 0) $x137 (not (= (+ ?x128 ?x1541 (b_G$ (pair$ ?0 ?v0!5))) 0)))))
blanchet@57170
  1659
(let ((@x3540 (monotonicity (quant-intro (refl (= $x2440 $x2440)) (= $x2451 $x3533)) (= (not $x2451) $x3538))))
blanchet@57170
  1660
(let ((@x3546 (monotonicity (monotonicity @x3540 (= (or $x1538 $x1543 (not $x2451)) $x3541)) (= $x2459 $x3544))))
blanchet@57170
  1661
(let ((@x3829 (monotonicity @x3546 (monotonicity @x3823 (= $x2959 $x3824)) (= $x2964 $x3827))))
blanchet@57170
  1662
(let ((@x3528 (quant-intro (refl (= (or $x137 $x922 $x933) (or $x137 $x922 $x933))) (= $x2436 $x3524))))
blanchet@57170
  1663
(let ((@x3835 (monotonicity (monotonicity @x3528 (= (not $x2436) $x3529)) (monotonicity @x3829 (= (not $x2964) $x3830)) (= (or (not $x2436) (not $x2964)) $x3833))))
blanchet@57170
  1664
(let ((@x3844 (monotonicity (monotonicity (monotonicity @x3835 (= $x2973 $x3836)) (= $x2978 $x3839)) (= (not $x2978) $x3842))))
blanchet@57170
  1665
(let ((@x3519 (quant-intro (refl (= (or $x136 (not $x148) $x907) (or $x136 (not $x148) $x907))) (= $x2391 $x3515))))
blanchet@57170
  1666
(let ((@x3847 (monotonicity (monotonicity @x3519 (= (not $x2391) $x3520)) @x3844 (= (or (not $x2391) (not $x2978)) $x3845))))
blanchet@57170
  1667
(let ((@x3856 (monotonicity (monotonicity (monotonicity @x3847 (= $x2987 $x3848)) (= $x2992 $x3851)) (= (not $x2992) $x3854))))
blanchet@57170
  1668
(let ((@x3510 (quant-intro (refl (= (>= ?x128 0) (>= ?x128 0))) (= $x899 $x3506))))
blanchet@57170
  1669
(let ((@x3859 (monotonicity (monotonicity @x3510 (= $x902 $x3511)) @x3856 (= (or $x902 (not $x2992)) $x3857))))
blanchet@57170
  1670
(let ((@x3868 (monotonicity (monotonicity (monotonicity @x3859 (= $x3000 $x3860)) (= $x3005 $x3863)) (= (not $x3005) $x3866))))
blanchet@57170
  1671
(let ((@x3874 (monotonicity (monotonicity @x3868 (= (or $x869 (not $x3005)) $x3869)) (= $x3013 $x3872))))
blanchet@57170
  1672
(let (($x2251 (forall ((?v1 B_Vertex$) )(let ((?x1911 (v_b_SP_G_2$ ?v0!20)))
blanchet@57170
  1673
(let ((?x1912 (* (- 1) ?x1911)))
blanchet@57170
  1674
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
  1675
(let (($x2242 (= (+ ?x273 ?x1912 (b_G$ (pair$ ?v1 ?v0!20))) 0)))
blanchet@57170
  1676
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
  1677
(let (($x2245 (and (not (>= (+ ?x273 ?x1912) 0)) $x291 $x2242)))
blanchet@57170
  1678
(not $x2245))))))))
blanchet@57170
  1679
))
blanchet@57170
  1680
(let (($x1915 (not $x1914)))
blanchet@57170
  1681
(let (($x1910 (not $x1909)))
blanchet@57170
  1682
(let (($x2260 (and $x1289 $x1910 $x1915 $x2251)))
blanchet@57170
  1683
(let (($x1891 (not (and $x1883 (not $x1888)))))
blanchet@57170
  1684
(let (($x1897 (or $x1891 $x1896)))
blanchet@57170
  1685
(let (($x1898 (not $x1897)))
blanchet@57170
  1686
(let (($x2265 (or $x1898 $x2260)))
blanchet@57170
  1687
(let (($x2268 (and $x1270 $x2265)))
blanchet@57170
  1688
(let (($x1864 (not (and (not $x1860) $x1862))))
blanchet@57170
  1689
(let (($x1870 (or $x1864 $x1869)))
blanchet@57170
  1690
(let (($x1871 (not $x1870)))
blanchet@57170
  1691
(let (($x2271 (or $x1871 $x2268)))
blanchet@57170
  1692
(let (($x2274 (and $x1256 $x2271)))
blanchet@57170
  1693
(let (($x2277 (or $x1848 $x2274)))
blanchet@57170
  1694
(let (($x2280 (and $x297 $x2277)))
blanchet@57170
  1695
(let (($x2283 (or $x773 $x2280)))
blanchet@57170
  1696
(let (($x2286 (and $x652 $x2283)))
blanchet@57170
  1697
(let (($x2289 (or $x1830 $x2286)))
blanchet@57170
  1698
(let (($x2292 (and $x1247 $x2289)))
blanchet@57170
  1699
(let (($x2295 (or $x1813 $x2292)))
blanchet@57170
  1700
(let (($x1779 (not $x1778)))
blanchet@57170
  1701
(let (($x1774 (not $x1773)))
blanchet@57170
  1702
(let (($x2301 (and $x1774 $x1779 $x256 $x1214 $x1209 $x266 $x1193 $x1199 $x2295)))
blanchet@57170
  1703
(let (($x1749 (not $x246)))
blanchet@57170
  1704
(let (($x1752 (and $x1146 $x1749)))
blanchet@57170
  1705
(let (($x1733 (not (and (not $x1724) (not $x1730)))))
blanchet@57170
  1706
(let (($x2212 (or $x1733 $x2209)))
blanchet@57170
  1707
(let (($x2215 (not $x2212)))
blanchet@57170
  1708
(let (($x2218 (or $x2215 $x1752)))
blanchet@57170
  1709
(let (($x2203 (forall ((?v0 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
  1710
(let ((?x2191 (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!9 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!9 ?v0) ?v0))))))
blanchet@57170
  1711
(let (($x2192 (= ?x2191 0)))
blanchet@57170
  1712
(let (($x2176 (<= (+ ?x230 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!9 ?v0)))) 0)))
blanchet@57170
  1713
(let (($x2197 (and (not $x2176) $x2192)))
blanchet@57170
  1714
(let (($x1099 (<= (+ b_Infinity$ (* (- 1) ?x230)) 0)))
blanchet@57170
  1715
(let (($x1100 (not $x1099)))
blanchet@57170
  1716
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1717
(let (($x132 (not $x127)))
blanchet@57170
  1718
(let (($x1103 (and $x132 $x1100)))
blanchet@57170
  1719
(let (($x1106 (not $x1103)))
blanchet@57170
  1720
(or $x1106 $x2197)))))))))))))
blanchet@57170
  1721
))
blanchet@57170
  1722
(let (($x2221 (and $x2203 $x2218)))
blanchet@57170
  1723
(let (($x2157 (forall ((?v1 B_Vertex$) )(let ((?x1661 (fun_app$c v_b_SP_G_3$ ?v0!8)))
blanchet@57170
  1724
(let ((?x1662 (* (- 1) ?x1661)))
blanchet@57170
  1725
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
  1726
(let (($x2148 (= (+ ?x230 ?x1662 (b_G$ (pair$ ?v1 ?v0!8))) 0)))
blanchet@57170
  1727
(let (($x2151 (and (not (>= (+ ?x230 ?x1662) 0)) $x2148)))
blanchet@57170
  1728
(not $x2151)))))))
blanchet@57170
  1729
))
blanchet@57170
  1730
(let (($x1665 (not $x1664)))
blanchet@57170
  1731
(let (($x1660 (not $x1659)))
blanchet@57170
  1732
(let (($x2163 (and $x1660 $x1665 $x2157)))
blanchet@57170
  1733
(let (($x2224 (or $x2163 $x2221)))
blanchet@57170
  1734
(let (($x1641 (forall ((?v0 B_Vertex$) )(let (($x1002 (<= (+ b_Infinity$ (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0))) 0)))
blanchet@57170
  1735
(let (($x1003 (not $x1002)))
blanchet@57170
  1736
(let (($x178 (fun_app$ v_b_Visited_G_1$ ?v0)))
blanchet@57170
  1737
(let (($x179 (not $x178)))
blanchet@57170
  1738
(let (($x1077 (and $x179 $x1003)))
blanchet@57170
  1739
(not $x1077)))))))
blanchet@57170
  1740
))
blanchet@57170
  1741
(let (($x2230 (and $x1641 $x212 $x215 $x217 $x220 $x2224)))
blanchet@57170
  1742
(let (($x2306 (or $x2230 $x2301)))
blanchet@57170
  1743
(let (($x2140 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
  1744
(let ((?x2128 (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ (?v1!7 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!7 ?v0) ?v0))))))
blanchet@57170
  1745
(let (($x2129 (= ?x2128 0)))
blanchet@57170
  1746
(let ((?x1613 (?v1!7 ?v0)))
blanchet@57170
  1747
(let (($x1618 (fun_app$ v_b_Visited_G_1$ ?x1613)))
blanchet@57170
  1748
(let (($x2134 (and (not (<= (+ ?x174 (* (- 1) (fun_app$c v_b_SP_G_1$ ?x1613))) 0)) $x1618 $x2129)))
blanchet@57170
  1749
(let (($x1002 (<= (+ b_Infinity$ (* (- 1) ?x174)) 0)))
blanchet@57170
  1750
(let (($x1003 (not $x1002)))
blanchet@57170
  1751
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1752
(let (($x132 (not $x127)))
blanchet@57170
  1753
(let (($x1006 (and $x132 $x1003)))
blanchet@57170
  1754
(let (($x1009 (not $x1006)))
blanchet@57170
  1755
(or $x1009 $x2134))))))))))))))
blanchet@57170
  1756
))
blanchet@57170
  1757
(let (($x2102 (forall ((?v0 B_Vertex$) )(let ((?x128 (v_b_SP_G_0$ ?v0)))
blanchet@57170
  1758
(let ((?x2090 (+ ?x128 (* (- 1) (v_b_SP_G_0$ (?v1!6 ?v0))) (* (- 1) (b_G$ (pair$ (?v1!6 ?v0) ?v0))))))
blanchet@57170
  1759
(let (($x2091 (= ?x2090 0)))
blanchet@57170
  1760
(let ((?x1578 (?v1!6 ?v0)))
blanchet@57170
  1761
(let (($x1583 (v_b_Visited_G_0$ ?x1578)))
blanchet@57170
  1762
(let (($x2096 (and (not (<= (+ ?x128 (* (- 1) (v_b_SP_G_0$ ?x1578))) 0)) $x1583 $x2091)))
blanchet@57170
  1763
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1764
(let (($x132 (not $x127)))
blanchet@57170
  1765
(let (($x951 (and $x132 (not (<= (+ b_Infinity$ (* (- 1) ?x128)) 0)))))
blanchet@57170
  1766
(let (($x954 (not $x951)))
blanchet@57170
  1767
(or $x954 $x2096))))))))))))
blanchet@57170
  1768
))
blanchet@57170
  1769
(let (($x2315 (and $x2102 $x173 $x1051 $x1045 $x997 $x2140 $x2306)))
blanchet@57170
  1770
(let (($x1567 (forall ((?v1 B_Vertex$) )(let ((?x1540 (v_b_SP_G_0$ ?v0!5)))
blanchet@57170
  1771
(let ((?x1541 (* (- 1) ?x1540)))
blanchet@57170
  1772
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
  1773
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  1774
(let (($x1554 (and (not (>= (+ ?x128 ?x1541) 0)) $x136 (= (+ ?x128 ?x1541 (b_G$ (pair$ ?v1 ?v0!5))) 0))))
blanchet@57170
  1775
(not $x1554)))))))
blanchet@57170
  1776
))
blanchet@57170
  1777
(let (($x2062 (and $x1539 $x1544 $x1567)))
blanchet@57170
  1778
(let (($x2320 (or $x2062 $x2315)))
blanchet@57170
  1779
(let (($x2323 (and $x939 $x2320)))
blanchet@57170
  1780
(let (($x1520 (not (and $x1512 (not $x1517)))))
blanchet@57170
  1781
(let (($x2051 (or $x1520 $x2048)))
blanchet@57170
  1782
(let (($x2054 (not $x2051)))
blanchet@57170
  1783
(let (($x2326 (or $x2054 $x2323)))
blanchet@57170
  1784
(let (($x2329 (and $x914 $x2326)))
blanchet@57170
  1785
(let (($x1493 (not (and (not $x1489) $x1491))))
blanchet@57170
  1786
(let (($x1499 (or $x1493 $x1498)))
blanchet@57170
  1787
(let (($x1500 (not $x1499)))
blanchet@57170
  1788
(let (($x2332 (or $x1500 $x2329)))
blanchet@57170
  1789
(let (($x2335 (and $x899 $x2332)))
blanchet@57170
  1790
(let (($x2338 (or $x1477 $x2335)))
blanchet@57170
  1791
(let (($x2341 (and $x145 $x2338)))
blanchet@57170
  1792
(let (($x2344 (or $x869 $x2341)))
blanchet@57170
  1793
(let ((@x2942 (rewrite (= (and $x1774 $x1779 $x256 $x1214 $x1209 $x266 $x2736 $x2742 $x2928) $x2940))))
blanchet@57170
  1794
(let (($x2242 (= (+ ?x273 (* (- 1) ?x1911) (b_G$ (pair$ ?0 ?v0!20))) 0)))
blanchet@57170
  1795
(let (($x2245 (and (not (>= (+ ?x273 (* (- 1) ?x1911)) 0)) $x291 $x2242)))
blanchet@57170
  1796
(let (($x2248 (not $x2245)))
blanchet@57170
  1797
(let ((@x2843 (monotonicity (rewrite (= $x2245 (not $x2837))) (= $x2248 (not (not $x2837))))))
blanchet@57170
  1798
(let ((@x2850 (quant-intro (trans @x2843 (rewrite (= (not (not $x2837)) $x2837)) (= $x2248 $x2837)) (= $x2251 $x2848))))
blanchet@57170
  1799
(let ((@x2820 (monotonicity (rewrite (= $x1276 (not (or $x300 $x922)))) (= $x1279 (not (not (or $x300 $x922)))))))
blanchet@57170
  1800
(let ((@x2824 (trans @x2820 (rewrite (= (not (not (or $x300 $x922))) (or $x300 $x922))) (= $x1279 (or $x300 $x922)))))
blanchet@57170
  1801
(let ((@x2832 (trans (monotonicity @x2824 (= $x1286 (or (or $x300 $x922) $x1282))) (rewrite (= (or (or $x300 $x922) $x1282) (or $x300 $x922 $x1282))) (= $x1286 (or $x300 $x922 $x1282)))))
blanchet@57170
  1802
(let ((@x2853 (monotonicity (quant-intro @x2832 (= $x1289 $x2833)) @x2850 (= $x2260 (and $x2833 $x1910 $x1915 $x2848)))))
blanchet@57170
  1803
(let ((@x2861 (trans @x2853 (rewrite (= (and $x2833 $x1910 $x1915 $x2848) $x2857)) (= $x2260 $x2857))))
blanchet@57170
  1804
(let ((@x2798 (monotonicity (rewrite (= (and $x1883 (not $x1888)) (not (or $x2791 $x1888)))) (= $x1891 (not (not (or $x2791 $x1888)))))))
blanchet@57170
  1805
(let ((@x2802 (trans @x2798 (rewrite (= (not (not (or $x2791 $x1888))) (or $x2791 $x1888))) (= $x1891 (or $x2791 $x1888)))))
blanchet@57170
  1806
(let ((@x2810 (trans (monotonicity @x2802 (= $x1897 (or (or $x2791 $x1888) $x1896))) (rewrite (= (or (or $x2791 $x1888) $x1896) $x2806)) (= $x1897 $x2806))))
blanchet@57170
  1807
(let ((@x2864 (monotonicity (monotonicity @x2810 (= $x1898 $x2811)) @x2861 (= $x2265 $x2862))))
blanchet@57170
  1808
(let ((@x2785 (rewrite (= (or (or $x291 (not $x301)) $x1262) (or $x291 (not $x301) $x1262)))))
blanchet@57170
  1809
(let ((@x2777 (rewrite (= (not (not (or $x291 (not $x301)))) (or $x291 (not $x301))))))
blanchet@57170
  1810
(let ((@x2775 (monotonicity (rewrite (= $x302 (not (or $x291 (not $x301))))) (= $x664 (not (not (or $x291 (not $x301))))))))
blanchet@57170
  1811
(let ((@x2782 (monotonicity (trans @x2775 @x2777 (= $x664 (or $x291 (not $x301)))) (= $x1267 (or (or $x291 (not $x301)) $x1262)))))
blanchet@57170
  1812
(let ((@x2790 (quant-intro (trans @x2782 @x2785 (= $x1267 (or $x291 (not $x301) $x1262))) (= $x1270 $x2788))))
blanchet@57170
  1813
(let ((@x2875 (trans (monotonicity @x2790 @x2864 (= $x2268 (and $x2788 $x2862))) (rewrite (= (and $x2788 $x2862) $x2871)) (= $x2268 $x2871))))
blanchet@57170
  1814
(let ((@x2752 (monotonicity (rewrite (= (and (not $x1860) $x1862) (not (or $x1860 $x2745)))) (= $x1864 (not (not (or $x1860 $x2745)))))))
blanchet@57170
  1815
(let ((@x2756 (trans @x2752 (rewrite (= (not (not (or $x1860 $x2745))) (or $x1860 $x2745))) (= $x1864 (or $x1860 $x2745)))))
blanchet@57170
  1816
(let ((@x2764 (trans (monotonicity @x2756 (= $x1870 (or (or $x1860 $x2745) $x1869))) (rewrite (= (or (or $x1860 $x2745) $x1869) $x2760)) (= $x1870 $x2760))))
blanchet@57170
  1817
(let ((@x2878 (monotonicity (monotonicity @x2764 (= $x1871 $x2765)) @x2875 (= $x2271 $x2876))))
blanchet@57170
  1818
(let ((@x2888 (trans (monotonicity @x2878 (= $x2274 (and $x1256 $x2876))) (rewrite (= (and $x1256 $x2876) $x2884)) (= $x2274 $x2884))))
blanchet@57170
  1819
(let ((@x2894 (monotonicity (monotonicity @x2888 (= $x2277 $x2889)) (= $x2280 (and $x297 $x2889)))))
blanchet@57170
  1820
(let ((@x2904 (monotonicity (trans @x2894 (rewrite (= (and $x297 $x2889) $x2897)) (= $x2280 $x2897)) (= $x2283 $x2902))))
blanchet@57170
  1821
(let ((@x2914 (trans (monotonicity @x2904 (= $x2286 (and $x652 $x2902))) (rewrite (= (and $x652 $x2902) $x2910)) (= $x2286 $x2910))))
blanchet@57170
  1822
(let ((@x2920 (monotonicity (monotonicity @x2914 (= $x2289 $x2915)) (= $x2292 (and $x1247 $x2915)))))
blanchet@57170
  1823
(let ((@x2930 (monotonicity (trans @x2920 (rewrite (= (and $x1247 $x2915) $x2923)) (= $x2292 $x2923)) (= $x2295 $x2928))))
blanchet@57170
  1824
(let ((@x2741 (monotonicity (rewrite (= $x1179 (not (or $x1169 $x1175)))) (= $x1196 (or (not (or $x1169 $x1175)) $x278)))))
blanchet@57170
  1825
(let ((@x2723 (monotonicity (rewrite (= $x1179 (not (or $x1169 $x1175)))) (= $x1182 (not (not (or $x1169 $x1175)))))))
blanchet@57170
  1826
(let ((@x2727 (trans @x2723 (rewrite (= (not (not (or $x1169 $x1175))) (or $x1169 $x1175))) (= $x1182 (or $x1169 $x1175)))))
blanchet@57170
  1827
(let ((@x2735 (trans (monotonicity @x2727 (= $x1190 (or (or $x1169 $x1175) $x1185))) (rewrite (= (or (or $x1169 $x1175) $x1185) (or $x1169 $x1175 $x1185))) (= $x1190 (or $x1169 $x1175 $x1185)))))
blanchet@57170
  1828
(let ((@x2933 (monotonicity (quant-intro @x2735 (= $x1193 $x2736)) (quant-intro @x2741 (= $x1199 $x2742)) @x2930 (= $x2301 (and $x1774 $x1779 $x256 $x1214 $x1209 $x266 $x2736 $x2742 $x2928)))))
blanchet@57170
  1829
(let ((@x2659 (monotonicity (rewrite (= $x1134 (not (or $x1099 $x922)))) (= $x1137 (not (not (or $x1099 $x922)))))))
blanchet@57170
  1830
(let ((@x2663 (trans @x2659 (rewrite (= (not (not (or $x1099 $x922))) (or $x1099 $x922))) (= $x1137 (or $x1099 $x922)))))
blanchet@57170
  1831
(let ((@x2671 (trans (monotonicity @x2663 (= $x1143 (or (or $x1099 $x922) $x1140))) (rewrite (= (or (or $x1099 $x922) $x1140) (or $x1099 $x922 $x1140))) (= $x1143 (or $x1099 $x922 $x1140)))))
blanchet@57170
  1832
(let ((@x2677 (monotonicity (quant-intro @x2671 (= $x1146 $x2672)) (= $x1752 (and $x2672 $x1749)))))
blanchet@57170
  1833
(let ((@x2637 (monotonicity (rewrite (= (and (not $x1724) (not $x1730)) (not (or $x1724 $x1730)))) (= $x1733 (not (not (or $x1724 $x1730)))))))
blanchet@57170
  1834
(let ((@x2641 (trans @x2637 (rewrite (= (not (not (or $x1724 $x1730))) (or $x1724 $x1730))) (= $x1733 (or $x1724 $x1730)))))
blanchet@57170
  1835
(let ((@x2649 (trans (monotonicity @x2641 (= $x2212 (or (or $x1724 $x1730) $x2209))) (rewrite (= (or (or $x1724 $x1730) $x2209) $x2645)) (= $x2212 $x2645))))
blanchet@57170
  1836
(let ((@x2687 (monotonicity (monotonicity @x2649 (= $x2215 $x2650)) (trans @x2677 (rewrite (= (and $x2672 $x1749) $x2680)) (= $x1752 $x2680)) (= $x2218 $x2685))))
blanchet@57170
  1837
(let ((@x2610 (monotonicity (rewrite (= $x1103 (not (or $x127 $x1099)))) (= $x1106 (not (not (or $x127 $x1099)))))))
blanchet@57170
  1838
(let ((@x2614 (trans @x2610 (rewrite (= (not (not (or $x127 $x1099))) (or $x127 $x1099))) (= $x1106 (or $x127 $x1099)))))
blanchet@57170
  1839
(let ((@x2622 (monotonicity @x2614 (rewrite (= (and (not $x2176) $x2192) $x2617)) (= (or $x1106 (and (not $x2176) $x2192)) (or (or $x127 $x1099) $x2617)))))
blanchet@57170
  1840
(let ((@x2627 (trans @x2622 (rewrite (= (or (or $x127 $x1099) $x2617) $x2623)) (= (or $x1106 (and (not $x2176) $x2192)) $x2623))))
blanchet@57170
  1841
(let ((@x2690 (monotonicity (quant-intro @x2627 (= $x2203 $x2628)) @x2687 (= $x2221 (and $x2628 $x2685)))))
blanchet@57170
  1842
(let (($x2151 (and (not (>= (+ ?x230 ?x1662) 0)) $x2148)))
blanchet@57170
  1843
(let (($x2154 (not $x2151)))
blanchet@57170
  1844
(let ((@x2586 (monotonicity (rewrite (= $x2151 (not $x2580))) (= $x2154 (not (not $x2580))))))
blanchet@57170
  1845
(let ((@x2593 (quant-intro (trans @x2586 (rewrite (= (not (not $x2580)) $x2580)) (= $x2154 $x2580)) (= $x2157 $x2591))))
blanchet@57170
  1846
(let ((@x2603 (trans (monotonicity @x2593 (= $x2163 (and $x1660 $x1665 $x2591))) (rewrite (= (and $x1660 $x1665 $x2591) $x2599)) (= $x2163 $x2599))))
blanchet@57170
  1847
(let ((@x2701 (monotonicity @x2603 (trans @x2690 (rewrite (= (and $x2628 $x2685) $x2694)) (= $x2221 $x2694)) (= $x2224 $x2699))))
blanchet@57170
  1848
(let ((@x2571 (monotonicity (rewrite (= $x1077 (not (or $x178 $x1002)))) (= (not $x1077) (not (not (or $x178 $x1002)))))))
blanchet@57170
  1849
(let ((@x2575 (trans @x2571 (rewrite (= (not (not (or $x178 $x1002))) (or $x178 $x1002))) (= (not $x1077) (or $x178 $x1002)))))
blanchet@57170
  1850
(let ((@x2704 (monotonicity (quant-intro @x2575 (= $x1641 $x2576)) @x2701 (= $x2230 (and $x2576 $x212 $x215 $x217 $x220 $x2699)))))
blanchet@57170
  1851
(let ((@x2716 (trans @x2704 (rewrite (= (and $x2576 $x212 $x215 $x217 $x220 $x2699) $x2712)) (= $x2230 $x2712))))
blanchet@57170
  1852
(let ((?x1613 (?v1!7 ?0)))
blanchet@57170
  1853
(let (($x1618 (fun_app$ v_b_Visited_G_1$ ?x1613)))
blanchet@57170
  1854
(let (($x2134 (and (not $x2113) $x1618 $x2129)))
blanchet@57170
  1855
(let (($x2137 (or $x1009 $x2134)))
blanchet@57170
  1856
(let ((@x2543 (monotonicity (rewrite (= $x1006 (not (or $x127 $x1002)))) (= $x1009 (not (not (or $x127 $x1002)))))))
blanchet@57170
  1857
(let ((@x2547 (trans @x2543 (rewrite (= (not (not (or $x127 $x1002))) (or $x127 $x1002))) (= $x1009 (or $x127 $x1002)))))
blanchet@57170
  1858
(let ((@x2556 (monotonicity @x2547 (rewrite (= $x2134 $x2551)) (= $x2137 (or (or $x127 $x1002) $x2551)))))
blanchet@57170
  1859
(let ((@x2561 (trans @x2556 (rewrite (= (or (or $x127 $x1002) $x2551) $x2557)) (= $x2137 $x2557))))
blanchet@57170
  1860
(let ((@x2521 (monotonicity (rewrite (= $x983 (not (or $x179 $x922)))) (= $x986 (not (not (or $x179 $x922)))))))
blanchet@57170
  1861
(let ((@x2525 (trans @x2521 (rewrite (= (not (not (or $x179 $x922))) (or $x179 $x922))) (= $x986 (or $x179 $x922)))))
blanchet@57170
  1862
(let ((@x2533 (trans (monotonicity @x2525 (= $x994 (or (or $x179 $x922) $x990))) (rewrite (= (or (or $x179 $x922) $x990) (or $x179 $x922 $x990))) (= $x994 (or $x179 $x922 $x990)))))
blanchet@57170
  1863
(let ((@x2509 (rewrite (= (or (or $x178 (not $x180)) $x1015) (or $x178 (not $x180) $x1015)))))
blanchet@57170
  1864
(let ((@x2501 (rewrite (= (not (not (or $x178 (not $x180)))) (or $x178 (not $x180))))))
blanchet@57170
  1865
(let ((@x2499 (monotonicity (rewrite (= $x181 (not (or $x178 (not $x180))))) (= $x403 (not (not (or $x178 (not $x180))))))))
blanchet@57170
  1866
(let ((@x2506 (monotonicity (trans @x2499 @x2501 (= $x403 (or $x178 (not $x180)))) (= $x1042 (or (or $x178 (not $x180)) $x1015)))))
blanchet@57170
  1867
(let ((@x2514 (quant-intro (trans @x2506 @x2509 (= $x1042 (or $x178 (not $x180) $x1015))) (= $x1045 $x2512))))
blanchet@57170
  1868
(let ((?x1578 (?v1!6 ?0)))
blanchet@57170
  1869
(let (($x1583 (v_b_Visited_G_0$ ?x1578)))
blanchet@57170
  1870
(let (($x2096 (and (not $x2075) $x1583 $x2091)))
blanchet@57170
  1871
(let (($x2099 (or $x954 $x2096)))
blanchet@57170
  1872
(let ((@x2470 (monotonicity (rewrite (= $x951 (not (or $x127 $x947)))) (= $x954 (not (not (or $x127 $x947)))))))
blanchet@57170
  1873
(let ((@x2474 (trans @x2470 (rewrite (= (not (not (or $x127 $x947))) (or $x127 $x947))) (= $x954 (or $x127 $x947)))))
blanchet@57170
  1874
(let ((@x2483 (monotonicity @x2474 (rewrite (= $x2096 $x2478)) (= $x2099 (or (or $x127 $x947) $x2478)))))
blanchet@57170
  1875
(let ((@x2488 (trans @x2483 (rewrite (= (or (or $x127 $x947) $x2478) $x2484)) (= $x2099 $x2484))))
blanchet@57170
  1876
(let ((@x2950 (monotonicity (quant-intro @x2488 (= $x2102 $x2489)) @x2514 (quant-intro @x2533 (= $x997 $x2534)) (quant-intro @x2561 (= $x2140 $x2562)) (monotonicity @x2716 (trans @x2933 @x2942 (= $x2301 $x2940)) (= $x2306 $x2945)) (= $x2315 (and $x2489 $x173 $x1051 $x2512 $x2534 $x2562 $x2945)))))
blanchet@57170
  1877
(let ((@x2963 (trans @x2950 (rewrite (= (and $x2489 $x173 $x1051 $x2512 $x2534 $x2562 $x2945) $x2959)) (= $x2315 $x2959))))
blanchet@57170
  1878
(let (($x1554 (and (not (>= (+ ?x128 ?x1541) 0)) $x136 (= (+ ?x128 ?x1541 (b_G$ (pair$ ?0 ?v0!5))) 0))))
blanchet@57170
  1879
(let (($x1564 (not $x1554)))
blanchet@57170
  1880
(let ((@x2446 (monotonicity (rewrite (= $x1554 (not $x2440))) (= $x1564 (not (not $x2440))))))
blanchet@57170
  1881
(let ((@x2453 (quant-intro (trans @x2446 (rewrite (= (not (not $x2440)) $x2440)) (= $x1564 $x2440)) (= $x1567 $x2451))))
blanchet@57170
  1882
(let ((@x2463 (trans (monotonicity @x2453 (= $x2062 (and $x1539 $x1544 $x2451))) (rewrite (= (and $x1539 $x1544 $x2451) $x2459)) (= $x2062 $x2459))))
blanchet@57170
  1883
(let ((@x2423 (monotonicity (rewrite (= $x926 (not (or $x137 $x922)))) (= $x929 (not (not (or $x137 $x922)))))))
blanchet@57170
  1884
(let ((@x2427 (trans @x2423 (rewrite (= (not (not (or $x137 $x922))) (or $x137 $x922))) (= $x929 (or $x137 $x922)))))
blanchet@57170
  1885
(let ((@x2435 (trans (monotonicity @x2427 (= $x936 (or (or $x137 $x922) $x933))) (rewrite (= (or (or $x137 $x922) $x933) (or $x137 $x922 $x933))) (= $x936 (or $x137 $x922 $x933)))))
blanchet@57170
  1886
(let ((@x2969 (monotonicity (quant-intro @x2435 (= $x939 $x2436)) (monotonicity @x2463 @x2963 (= $x2320 $x2964)) (= $x2323 (and $x2436 $x2964)))))
blanchet@57170
  1887
(let ((@x2401 (monotonicity (rewrite (= (and $x1512 (not $x1517)) (not (or $x2394 $x1517)))) (= $x1520 (not (not (or $x2394 $x1517)))))))
blanchet@57170
  1888
(let ((@x2405 (trans @x2401 (rewrite (= (not (not (or $x2394 $x1517))) (or $x2394 $x1517))) (= $x1520 (or $x2394 $x1517)))))
blanchet@57170
  1889
(let ((@x2413 (trans (monotonicity @x2405 (= $x2051 (or (or $x2394 $x1517) $x2048))) (rewrite (= (or (or $x2394 $x1517) $x2048) $x2409)) (= $x2051 $x2409))))
blanchet@57170
  1890
(let ((@x2980 (monotonicity (monotonicity @x2413 (= $x2054 $x2414)) (trans @x2969 (rewrite (= (and $x2436 $x2964) $x2973)) (= $x2323 $x2973)) (= $x2326 $x2978))))
blanchet@57170
  1891
(let ((@x2388 (rewrite (= (or (or $x136 (not $x148)) $x907) (or $x136 (not $x148) $x907)))))
blanchet@57170
  1892
(let ((@x2380 (rewrite (= (not (not (or $x136 (not $x148)))) (or $x136 (not $x148))))))
blanchet@57170
  1893
(let ((@x2378 (monotonicity (rewrite (= $x149 (not (or $x136 (not $x148))))) (= $x382 (not (not (or $x136 (not $x148))))))))
blanchet@57170
  1894
(let ((@x2385 (monotonicity (trans @x2378 @x2380 (= $x382 (or $x136 (not $x148)))) (= $x911 (or (or $x136 (not $x148)) $x907)))))
blanchet@57170
  1895
(let ((@x2393 (quant-intro (trans @x2385 @x2388 (= $x911 (or $x136 (not $x148) $x907))) (= $x914 $x2391))))
blanchet@57170
  1896
(let ((@x2991 (trans (monotonicity @x2393 @x2980 (= $x2329 (and $x2391 $x2978))) (rewrite (= (and $x2391 $x2978) $x2987)) (= $x2329 $x2987))))
blanchet@57170
  1897
(let ((@x2355 (monotonicity (rewrite (= (and (not $x1489) $x1491) (not (or $x1489 $x2348)))) (= $x1493 (not (not (or $x1489 $x2348)))))))
blanchet@57170
  1898
(let ((@x2359 (trans @x2355 (rewrite (= (not (not (or $x1489 $x2348))) (or $x1489 $x2348))) (= $x1493 (or $x1489 $x2348)))))
blanchet@57170
  1899
(let ((@x2367 (trans (monotonicity @x2359 (= $x1499 (or (or $x1489 $x2348) $x1498))) (rewrite (= (or (or $x1489 $x2348) $x1498) $x2363)) (= $x1499 $x2363))))
blanchet@57170
  1900
(let ((@x2994 (monotonicity (monotonicity @x2367 (= $x1500 $x2368)) @x2991 (= $x2332 $x2992))))
blanchet@57170
  1901
(let ((@x3004 (trans (monotonicity @x2994 (= $x2335 (and $x899 $x2992))) (rewrite (= (and $x899 $x2992) $x3000)) (= $x2335 $x3000))))
blanchet@57170
  1902
(let ((@x3010 (monotonicity (monotonicity @x3004 (= $x2338 $x3005)) (= $x2341 (and $x145 $x3005)))))
blanchet@57170
  1903
(let ((@x3020 (monotonicity (trans @x3010 (rewrite (= (and $x145 $x3005) $x3013)) (= $x2341 $x3013)) (= $x2344 $x3018))))
blanchet@57170
  1904
(let (($x1938 (forall ((?v1 B_Vertex$) )(let ((?x1911 (v_b_SP_G_2$ ?v0!20)))
blanchet@57170
  1905
(let ((?x1912 (* (- 1) ?x1911)))
blanchet@57170
  1906
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
  1907
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
  1908
(let (($x1925 (and (not (>= (+ ?x273 ?x1912) 0)) $x291 (= (+ (b_G$ (pair$ ?v1 ?v0!20)) ?x273 ?x1912) 0))))
blanchet@57170
  1909
(not $x1925)))))))
blanchet@57170
  1910
))
blanchet@57170
  1911
(let (($x1932 (not (not (and $x1910 $x1915)))))
blanchet@57170
  1912
(let (($x1942 (and $x1932 $x1938)))
blanchet@57170
  1913
(let (($x1947 (and $x1289 $x1942)))
blanchet@57170
  1914
(let (($x1951 (or $x1898 $x1947)))
blanchet@57170
  1915
(let (($x1955 (and $x1270 $x1951)))
blanchet@57170
  1916
(let (($x1959 (or $x1871 $x1955)))
blanchet@57170
  1917
(let (($x1963 (and $x1256 $x1959)))
blanchet@57170
  1918
(let (($x1967 (or $x1848 $x1963)))
blanchet@57170
  1919
(let (($x1842 (not $x773)))
blanchet@57170
  1920
(let (($x1971 (and $x1842 $x1967)))
blanchet@57170
  1921
(let (($x1975 (or $x773 $x1971)))
blanchet@57170
  1922
(let (($x1979 (and $x652 $x1975)))
blanchet@57170
  1923
(let (($x1983 (or $x1830 $x1979)))
blanchet@57170
  1924
(let (($x1987 (and $x1247 $x1983)))
blanchet@57170
  1925
(let (($x1991 (or $x1813 $x1987)))
blanchet@57170
  1926
(let (($x1801 (and (and $x1774 $x1779) $x256 $x1214 $x1209 $x266 $x1193 $x1199)))
blanchet@57170
  1927
(let (($x1995 (and $x1801 $x1991)))
blanchet@57170
  1928
(let (($x1739 (not (or $x1733 (>= (+ ?x1727 ?x1721 ?x1735) 0)))))
blanchet@57170
  1929
(let (($x1756 (or $x1739 $x1752)))
blanchet@57170
  1930
(let (($x1713 (forall ((?v0 B_Vertex$) )(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v0)))
blanchet@57170
  1931
(let ((?x1097 (* (- 1) ?x230)))
blanchet@57170
  1932
(let ((?x1699 (fun_app$c v_b_SP_G_3$ (?v1!9 ?v0))))
blanchet@57170
  1933
(let ((?x1704 (b_G$ (pair$ (?v1!9 ?v0) ?v0))))
blanchet@57170
  1934
(let (($x1706 (= (+ ?x1704 ?x1699 ?x1097) 0)))
blanchet@57170
  1935
(let (($x1707 (and (not (>= (+ ?x1699 ?x1097) 0)) $x1706)))
blanchet@57170
  1936
(let (($x1099 (<= (+ b_Infinity$ ?x1097) 0)))
blanchet@57170
  1937
(let (($x1100 (not $x1099)))
blanchet@57170
  1938
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1939
(let (($x132 (not $x127)))
blanchet@57170
  1940
(let (($x1103 (and $x132 $x1100)))
blanchet@57170
  1941
(let (($x1106 (not $x1103)))
blanchet@57170
  1942
(or $x1106 $x1707))))))))))))))
blanchet@57170
  1943
))
blanchet@57170
  1944
(let (($x1760 (and $x1713 $x1756)))
blanchet@57170
  1945
(let (($x1687 (forall ((?v1 B_Vertex$) )(let ((?x1661 (fun_app$c v_b_SP_G_3$ ?v0!8)))
blanchet@57170
  1946
(let ((?x1662 (* (- 1) ?x1661)))
blanchet@57170
  1947
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
  1948
(let (($x1675 (and (not (>= (+ ?x230 ?x1662) 0)) (= (+ (b_G$ (pair$ ?v1 ?v0!8)) ?x230 ?x1662) 0))))
blanchet@57170
  1949
(not $x1675))))))
blanchet@57170
  1950
))
blanchet@57170
  1951
(let (($x1681 (not (not (and $x1660 $x1665)))))
blanchet@57170
  1952
(let (($x1691 (and $x1681 $x1687)))
blanchet@57170
  1953
(let (($x1764 (or $x1691 $x1760)))
blanchet@57170
  1954
(let (($x1652 (and $x1641 $x212 $x215 $x217 $x220)))
blanchet@57170
  1955
(let (($x1768 (and $x1652 $x1764)))
blanchet@57170
  1956
(let (($x1999 (or $x1768 $x1995)))
blanchet@57170
  1957
(let (($x1629 (forall ((?v0 B_Vertex$) )(let ((?x174 (fun_app$c v_b_SP_G_1$ ?v0)))
blanchet@57170
  1958
(let ((?x1000 (* (- 1) ?x174)))
blanchet@57170
  1959
(let ((?x1613 (?v1!7 ?v0)))
blanchet@57170
  1960
(let ((?x1614 (fun_app$c v_b_SP_G_1$ ?x1613)))
blanchet@57170
  1961
(let ((?x1620 (b_G$ (pair$ ?x1613 ?v0))))
blanchet@57170
  1962
(let (($x1622 (= (+ ?x1620 ?x1614 ?x1000) 0)))
blanchet@57170
  1963
(let (($x1618 (fun_app$ v_b_Visited_G_1$ ?x1613)))
blanchet@57170
  1964
(let (($x1623 (and (not (>= (+ ?x1614 ?x1000) 0)) $x1618 $x1622)))
blanchet@57170
  1965
(let (($x1002 (<= (+ b_Infinity$ ?x1000) 0)))
blanchet@57170
  1966
(let (($x1003 (not $x1002)))
blanchet@57170
  1967
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1968
(let (($x132 (not $x127)))
blanchet@57170
  1969
(let (($x1006 (and $x132 $x1003)))
blanchet@57170
  1970
(let (($x1009 (not $x1006)))
blanchet@57170
  1971
(or $x1009 $x1623))))))))))))))))
blanchet@57170
  1972
))
blanchet@57170
  1973
(let (($x1594 (forall ((?v0 B_Vertex$) )(let ((?x1585 (b_G$ (pair$ (?v1!6 ?v0) ?v0))))
blanchet@57170
  1974
(let ((?x128 (v_b_SP_G_0$ ?v0)))
blanchet@57170
  1975
(let ((?x945 (* (- 1) ?x128)))
blanchet@57170
  1976
(let ((?x1578 (?v1!6 ?v0)))
blanchet@57170
  1977
(let ((?x1579 (v_b_SP_G_0$ ?x1578)))
blanchet@57170
  1978
(let (($x1587 (= (+ ?x1579 ?x945 ?x1585) 0)))
blanchet@57170
  1979
(let (($x1583 (v_b_Visited_G_0$ ?x1578)))
blanchet@57170
  1980
(let (($x1588 (and (not (>= (+ ?x1579 ?x945) 0)) $x1583 $x1587)))
blanchet@57170
  1981
(let (($x127 (= ?v0 b_Source$)))
blanchet@57170
  1982
(let (($x132 (not $x127)))
blanchet@57170
  1983
(let (($x951 (and $x132 (not (<= (+ b_Infinity$ ?x945) 0)))))
blanchet@57170
  1984
(let (($x954 (not $x951)))
blanchet@57170
  1985
(or $x954 $x1588))))))))))))))
blanchet@57170
  1986
))
blanchet@57170
  1987
(let (($x1632 (and $x1594 $x173 $x1051 $x1045 $x997 $x1629)))
blanchet@57170
  1988
(let (($x2003 (and $x1632 $x1999)))
blanchet@57170
  1989
(let (($x1561 (not (not (and $x1539 $x1544)))))
blanchet@57170
  1990
(let (($x1571 (and $x1561 $x1567)))
blanchet@57170
  1991
(let (($x2007 (or $x1571 $x2003)))
blanchet@57170
  1992
(let (($x2011 (and $x939 $x2007)))
blanchet@57170
  1993
(let (($x1527 (not (or $x1520 (>= (+ ?x1521 ?x1523 ?x1514) 0)))))
blanchet@57170
  1994
(let (($x2015 (or $x1527 $x2011)))
blanchet@57170
  1995
(let (($x2019 (and $x914 $x2015)))
blanchet@57170
  1996
(let (($x2023 (or $x1500 $x2019)))
blanchet@57170
  1997
(let (($x2027 (and $x899 $x2023)))
blanchet@57170
  1998
(let (($x2031 (or $x1477 $x2027)))
blanchet@57170
  1999
(let (($x1471 (not $x869)))
blanchet@57170
  2000
(let (($x2035 (and $x1471 $x2031)))
blanchet@57170
  2001
(let (($x2039 (or $x869 $x2035)))
blanchet@57170
  2002
(let (($x1925 (and (not (>= (+ ?x273 (* (- 1) ?x1911)) 0)) $x291 (= (+ (b_G$ (pair$ ?0 ?v0!20)) ?x273 (* (- 1) ?x1911)) 0))))
blanchet@57170
  2003
(let (($x1935 (not $x1925)))
blanchet@57170
  2004
(let (($x2243 (= (= (+ (b_G$ (pair$ ?0 ?v0!20)) ?x273 (* (- 1) ?x1911)) 0) $x2242)))
blanchet@57170
  2005
(let (($x2240 (= (+ (b_G$ (pair$ ?0 ?v0!20)) ?x273 (* (- 1) ?x1911)) (+ ?x273 (* (- 1) ?x1911) (b_G$ (pair$ ?0 ?v0!20))))))
blanchet@57170
  2006
(let ((@x2250 (monotonicity (monotonicity (monotonicity (rewrite $x2240) $x2243) (= $x1925 $x2245)) (= $x1935 $x2248))))
blanchet@57170
  2007
(let ((@x2256 (monotonicity (rewrite (= $x1932 (and $x1910 $x1915))) (quant-intro @x2250 (= $x1938 $x2251)) (= $x1942 (and (and $x1910 $x1915) $x2251)))))
blanchet@57170
  2008
(let ((@x2264 (trans (monotonicity @x2256 (= $x1947 (and $x1289 (and (and $x1910 $x1915) $x2251)))) (rewrite (= (and $x1289 (and (and $x1910 $x1915) $x2251)) $x2260)) (= $x1947 $x2260))))
blanchet@57170
  2009
(let ((@x2273 (monotonicity (monotonicity (monotonicity @x2264 (= $x1951 $x2265)) (= $x1955 $x2268)) (= $x1959 $x2271))))
blanchet@57170
  2010
(let ((@x2282 (monotonicity (rewrite (= $x1842 $x297)) (monotonicity (monotonicity @x2273 (= $x1963 $x2274)) (= $x1967 $x2277)) (= $x1971 $x2280))))
blanchet@57170
  2011
(let ((@x2291 (monotonicity (monotonicity (monotonicity @x2282 (= $x1975 $x2283)) (= $x1979 $x2286)) (= $x1983 $x2289))))
blanchet@57170
  2012
(let ((@x2300 (monotonicity (monotonicity (monotonicity @x2291 (= $x1987 $x2292)) (= $x1991 $x2295)) (= $x1995 (and $x1801 $x2295)))))
blanchet@57170
  2013
(let ((@x2211 (monotonicity (rewrite (= (+ ?x1727 ?x1721 ?x1735) ?x2206)) (= (>= (+ ?x1727 ?x1721 ?x1735) 0) $x2209))))
blanchet@57170
  2014
(let ((@x2214 (monotonicity @x2211 (= (or $x1733 (>= (+ ?x1727 ?x1721 ?x1735) 0)) $x2212))))
blanchet@57170
  2015
(let (($x2197 (and (not $x2176) $x2192)))
blanchet@57170
  2016
(let (($x2200 (or $x1106 $x2197)))
blanchet@57170
  2017
(let ((?x1097 (* (- 1) ?x230)))
blanchet@57170
  2018
(let ((?x1699 (fun_app$c v_b_SP_G_3$ (?v1!9 ?0))))
blanchet@57170
  2019
(let ((?x1704 (b_G$ (pair$ (?v1!9 ?0) ?0))))
blanchet@57170
  2020
(let (($x1706 (= (+ ?x1704 ?x1699 ?x1097) 0)))
blanchet@57170
  2021
(let (($x1707 (and (not (>= (+ ?x1699 ?x1097) 0)) $x1706)))
blanchet@57170
  2022
(let (($x1710 (or $x1106 $x1707)))
blanchet@57170
  2023
(let ((@x2189 (monotonicity (rewrite (= (+ ?x1704 ?x1699 ?x1097) (+ ?x1097 ?x1699 ?x1704))) (= $x1706 (= (+ ?x1097 ?x1699 ?x1704) 0)))))
blanchet@57170
  2024
(let ((@x2196 (trans @x2189 (rewrite (= (= (+ ?x1097 ?x1699 ?x1704) 0) $x2192)) (= $x1706 $x2192))))
blanchet@57170
  2025
(let ((@x2173 (monotonicity (rewrite (= (+ ?x1699 ?x1097) (+ ?x1097 ?x1699))) (= (>= (+ ?x1699 ?x1097) 0) (>= (+ ?x1097 ?x1699) 0)))))
blanchet@57170
  2026
(let ((@x2180 (trans @x2173 (rewrite (= (>= (+ ?x1097 ?x1699) 0) $x2176)) (= (>= (+ ?x1699 ?x1097) 0) $x2176))))
blanchet@57170
  2027
(let ((@x2199 (monotonicity (monotonicity @x2180 (= (not (>= (+ ?x1699 ?x1097) 0)) (not $x2176))) @x2196 (= $x1707 $x2197))))
blanchet@57170
  2028
(let ((@x2223 (monotonicity (quant-intro (monotonicity @x2199 (= $x1710 $x2200)) (= $x1713 $x2203)) (monotonicity (monotonicity @x2214 (= $x1739 $x2215)) (= $x1756 $x2218)) (= $x1760 $x2221))))
blanchet@57170
  2029
(let (($x1675 (and (not (>= (+ ?x230 ?x1662) 0)) (= (+ (b_G$ (pair$ ?0 ?v0!8)) ?x230 ?x1662) 0))))
blanchet@57170
  2030
(let (($x1684 (not $x1675)))
blanchet@57170
  2031
(let (($x2146 (= (+ (b_G$ (pair$ ?0 ?v0!8)) ?x230 ?x1662) (+ ?x230 ?x1662 (b_G$ (pair$ ?0 ?v0!8))))))
blanchet@57170
  2032
(let ((@x2150 (monotonicity (rewrite $x2146) (= (= (+ (b_G$ (pair$ ?0 ?v0!8)) ?x230 ?x1662) 0) $x2148))))
blanchet@57170
  2033
(let ((@x2159 (quant-intro (monotonicity (monotonicity @x2150 (= $x1675 $x2151)) (= $x1684 $x2154)) (= $x1687 $x2157))))
blanchet@57170
  2034
(let ((@x2162 (monotonicity (rewrite (= $x1681 (and $x1660 $x1665))) @x2159 (= $x1691 (and (and $x1660 $x1665) $x2157)))))
blanchet@57170
  2035
(let ((@x2167 (trans @x2162 (rewrite (= (and (and $x1660 $x1665) $x2157) $x2163)) (= $x1691 $x2163))))
blanchet@57170
  2036
(let ((@x2229 (monotonicity (monotonicity @x2167 @x2223 (= $x1764 $x2224)) (= $x1768 (and $x1652 $x2224)))))
blanchet@57170
  2037
(let ((@x2308 (monotonicity (trans @x2229 (rewrite (= (and $x1652 $x2224) $x2230)) (= $x1768 $x2230)) (trans @x2300 (rewrite (= (and $x1801 $x2295) $x2301)) (= $x1995 $x2301)) (= $x1999 $x2306))))
blanchet@57170
  2038
(let ((?x1000 (* (- 1) ?x174)))
blanchet@57170
  2039
(let ((?x1614 (fun_app$c v_b_SP_G_1$ ?x1613)))
blanchet@57170
  2040
(let ((?x1620 (b_G$ (pair$ ?x1613 ?0))))
blanchet@57170
  2041
(let (($x1622 (= (+ ?x1620 ?x1614 ?x1000) 0)))
blanchet@57170
  2042
(let (($x1623 (and (not (>= (+ ?x1614 ?x1000) 0)) $x1618 $x1622)))
blanchet@57170
  2043
(let (($x1626 (or $x1009 $x1623)))
blanchet@57170
  2044
(let ((@x2126 (monotonicity (rewrite (= (+ ?x1620 ?x1614 ?x1000) (+ ?x1000 ?x1614 ?x1620))) (= $x1622 (= (+ ?x1000 ?x1614 ?x1620) 0)))))
blanchet@57170
  2045
(let ((@x2133 (trans @x2126 (rewrite (= (= (+ ?x1000 ?x1614 ?x1620) 0) $x2129)) (= $x1622 $x2129))))
blanchet@57170
  2046
(let ((@x2110 (monotonicity (rewrite (= (+ ?x1614 ?x1000) (+ ?x1000 ?x1614))) (= (>= (+ ?x1614 ?x1000) 0) (>= (+ ?x1000 ?x1614) 0)))))
blanchet@57170
  2047
(let ((@x2117 (trans @x2110 (rewrite (= (>= (+ ?x1000 ?x1614) 0) $x2113)) (= (>= (+ ?x1614 ?x1000) 0) $x2113))))
blanchet@57170
  2048
(let ((@x2136 (monotonicity (monotonicity @x2117 (= (not (>= (+ ?x1614 ?x1000) 0)) (not $x2113))) @x2133 (= $x1623 $x2134))))
blanchet@57170
  2049
(let (($x1587 (= (+ (v_b_SP_G_0$ ?x1578) (* (- 1) ?x128) (b_G$ (pair$ ?x1578 ?0))) 0)))
blanchet@57170
  2050
(let (($x1588 (and (not (>= (+ (v_b_SP_G_0$ ?x1578) (* (- 1) ?x128)) 0)) $x1583 $x1587)))
blanchet@57170
  2051
(let (($x1591 (or $x954 $x1588)))
blanchet@57170
  2052
(let (($x2086 (= (+ (* (- 1) ?x128) (v_b_SP_G_0$ ?x1578) (b_G$ (pair$ ?x1578 ?0))) 0)))
blanchet@57170
  2053
(let (($x2084 (= (+ (v_b_SP_G_0$ ?x1578) (* (- 1) ?x128) (b_G$ (pair$ ?x1578 ?0))) (+ (* (- 1) ?x128) (v_b_SP_G_0$ ?x1578) (b_G$ (pair$ ?x1578 ?0))))))
blanchet@57170
  2054
(let ((@x2095 (trans (monotonicity (rewrite $x2084) (= $x1587 $x2086)) (rewrite (= $x2086 $x2091)) (= $x1587 $x2091))))
blanchet@57170
  2055
(let (($x2081 (= (not (>= (+ (v_b_SP_G_0$ ?x1578) (* (- 1) ?x128)) 0)) (not $x2075))))
blanchet@57170
  2056
(let (($x1581 (>= (+ (v_b_SP_G_0$ ?x1578) (* (- 1) ?x128)) 0)))
blanchet@57170
  2057
(let (($x2068 (= (+ (v_b_SP_G_0$ ?x1578) (* (- 1) ?x128)) (+ (* (- 1) ?x128) (v_b_SP_G_0$ ?x1578)))))
blanchet@57170
  2058
(let ((@x2072 (monotonicity (rewrite $x2068) (= $x1581 (>= (+ (* (- 1) ?x128) (v_b_SP_G_0$ ?x1578)) 0)))))
blanchet@57170
  2059
(let ((@x2079 (trans @x2072 (rewrite (= (>= (+ (* (- 1) ?x128) (v_b_SP_G_0$ ?x1578)) 0) $x2075)) (= $x1581 $x2075))))
blanchet@57170
  2060
(let ((@x2101 (monotonicity (monotonicity (monotonicity @x2079 $x2081) @x2095 (= $x1588 $x2096)) (= $x1591 $x2099))))
blanchet@57170
  2061
(let ((@x2311 (monotonicity (quant-intro @x2101 (= $x1594 $x2102)) (quant-intro (monotonicity @x2136 (= $x1626 $x2137)) (= $x1629 $x2140)) (= $x1632 (and $x2102 $x173 $x1051 $x1045 $x997 $x2140)))))
blanchet@57170
  2062
(let ((@x2314 (monotonicity @x2311 @x2308 (= $x2003 (and (and $x2102 $x173 $x1051 $x1045 $x997 $x2140) $x2306)))))
blanchet@57170
  2063
(let ((@x2319 (trans @x2314 (rewrite (= (and (and $x2102 $x173 $x1051 $x1045 $x997 $x2140) $x2306) $x2315)) (= $x2003 $x2315))))
blanchet@57170
  2064
(let ((@x2061 (monotonicity (rewrite (= $x1561 (and $x1539 $x1544))) (= $x1571 (and (and $x1539 $x1544) $x1567)))))
blanchet@57170
  2065
(let ((@x2066 (trans @x2061 (rewrite (= (and (and $x1539 $x1544) $x1567) $x2062)) (= $x1571 $x2062))))
blanchet@57170
  2066
(let ((@x2325 (monotonicity (monotonicity @x2066 @x2319 (= $x2007 $x2320)) (= $x2011 $x2323))))
blanchet@57170
  2067
(let ((@x2050 (monotonicity (rewrite (= (+ ?x1521 ?x1523 ?x1514) ?x2045)) (= (>= (+ ?x1521 ?x1523 ?x1514) 0) $x2048))))
blanchet@57170
  2068
(let ((@x2053 (monotonicity @x2050 (= (or $x1520 (>= (+ ?x1521 ?x1523 ?x1514) 0)) $x2051))))
blanchet@57170
  2069
(let ((@x2328 (monotonicity (monotonicity @x2053 (= $x1527 $x2054)) @x2325 (= $x2015 $x2326))))
blanchet@57170
  2070
(let ((@x2337 (monotonicity (monotonicity (monotonicity @x2328 (= $x2019 $x2329)) (= $x2023 $x2332)) (= $x2027 $x2335))))
blanchet@57170
  2071
(let ((@x2343 (monotonicity (rewrite (= $x1471 $x145)) (monotonicity @x2337 (= $x2031 $x2338)) (= $x2035 $x2341))))
blanchet@57170
  2072
(let (($x1926 (exists ((?v1 B_Vertex$) )(let ((?x1911 (v_b_SP_G_2$ ?v0!20)))
blanchet@57170
  2073
(let ((?x1912 (* (- 1) ?x1911)))
blanchet@57170
  2074
(let ((?x273 (v_b_SP_G_2$ ?v1)))
blanchet@57170
  2075
(let (($x291 (fun_app$ v_b_Visited_G_2$ ?v1)))
blanchet@57170
  2076
(and (not (>= (+ ?x273 ?x1912) 0)) $x291 (= (+ (b_G$ (pair$ ?v1 ?v0!20)) ?x273 ?x1912) 0)))))))
blanchet@57170
  2077
))
blanchet@57170
  2078
(let ((@x1944 (nnf-neg (refl (~ $x1932 $x1932)) (nnf-neg (refl (~ $x1935 $x1935)) (~ (not $x1926) $x1938)) (~ (not (or (not (and $x1910 $x1915)) $x1926)) $x1942))))
blanchet@57170
  2079
(let ((@x1946 (trans (sk (~ (not $x1329) (not (or (not (and $x1910 $x1915)) $x1926)))) @x1944 (~ (not $x1329) $x1942))))
blanchet@57170
  2080
(let ((@x1907 (nnf-neg (nnf-pos (refl (~ $x1286 $x1286)) (~ $x1289 $x1289)) (~ (not $x1292) $x1289))))
blanchet@57170
  2081
(let ((@x1954 (nnf-neg (sk (~ $x1292 $x1898)) (nnf-neg @x1907 @x1946 (~ (not $x1332) $x1947)) (~ (not $x1335) $x1951))))
blanchet@57170
  2082
(let ((@x1880 (nnf-neg (nnf-pos (refl (~ $x1267 $x1267)) (~ $x1270 $x1270)) (~ (not $x1273) $x1270))))
blanchet@57170
  2083
(let ((@x1962 (nnf-neg (sk (~ $x1273 $x1871)) (nnf-neg @x1880 @x1954 (~ (not $x1338) $x1955)) (~ (not $x1341) $x1959))))
blanchet@57170
  2084
(let ((@x1857 (nnf-neg (nnf-pos (refl (~ (>= ?x273 0) (>= ?x273 0))) (~ $x1256 $x1256)) (~ (not $x1259) $x1256))))
blanchet@57170
  2085
(let ((@x1970 (nnf-neg (sk (~ $x1259 $x1848)) (nnf-neg @x1857 @x1962 (~ (not $x1344) $x1963)) (~ (not $x1347) $x1967))))
blanchet@57170
  2086
(let ((@x1978 (nnf-neg (refl (~ $x773 $x773)) (nnf-neg (refl (~ $x1842 $x1842)) @x1970 (~ (not $x1350) $x1971)) (~ (not $x1353) $x1975))))
blanchet@57170
  2087
(let ((@x1839 (nnf-neg (nnf-pos (refl (~ (or $x300 $x278) (or $x300 $x278))) (~ $x652 $x652)) (~ (not $x785) $x652))))
blanchet@57170
  2088
(let ((@x1986 (nnf-neg (sk (~ $x785 $x1830)) (nnf-neg @x1839 @x1978 (~ (not $x1356) $x1979)) (~ (not $x1359) $x1983))))
blanchet@57170
  2089
(let ((@x1822 (nnf-neg (nnf-pos (refl (~ $x1243 $x1243)) (~ $x1247 $x1247)) (~ (not $x1250) $x1247))))
blanchet@57170
  2090
(let ((@x1994 (nnf-neg (sk (~ $x1250 $x1813)) (nnf-neg @x1822 @x1986 (~ (not $x1362) $x1987)) (~ (not $x1365) $x1991))))
blanchet@57170
  2091
(let ((@x1803 (monotonicity (sk (~ $x1080 (and $x1774 $x1779))) (refl (~ $x256 $x256)) (refl (~ $x1214 $x1214)) (nnf-pos (refl (~ $x1206 $x1206)) (~ $x1209 $x1209)) (refl (~ $x266 $x266)) (nnf-pos (refl (~ $x1190 $x1190)) (~ $x1193 $x1193)) (nnf-pos (refl (~ $x1196 $x1196)) (~ $x1199 $x1199)) (~ $x1235 $x1801))))
blanchet@57170
  2092
(let ((@x1998 (nnf-neg (nnf-neg @x1803 (~ (not $x1240) $x1801)) @x1994 (~ (not $x1368) $x1995))))
blanchet@57170
  2093
(let ((@x1748 (nnf-neg (nnf-pos (refl (~ $x1143 $x1143)) (~ $x1146 $x1146)) (~ (not $x1149) $x1146))))
blanchet@57170
  2094
(let ((@x1759 (nnf-neg (sk (~ $x1149 $x1739)) (nnf-neg @x1748 (refl (~ $x1749 $x1749)) (~ (not $x1152) $x1752)) (~ (not $x1155) $x1756))))
blanchet@57170
  2095
(let ((@x1715 (nnf-pos (monotonicity (refl (~ $x1106 $x1106)) (sk (~ $x1122 $x1707)) (~ $x1125 $x1710)) (~ $x1128 $x1713))))
blanchet@57170
  2096
(let ((@x1763 (nnf-neg (nnf-neg @x1715 (~ (not $x1131) $x1713)) @x1759 (~ (not $x1158) $x1760))))
blanchet@57170
  2097
(let (($x1676 (exists ((?v1 B_Vertex$) )(let ((?x1661 (fun_app$c v_b_SP_G_3$ ?v0!8)))
blanchet@57170
  2098
(let ((?x1662 (* (- 1) ?x1661)))
blanchet@57170
  2099
(let ((?x230 (fun_app$c v_b_SP_G_3$ ?v1)))
blanchet@57170
  2100
(and (not (>= (+ ?x230 ?x1662) 0)) (= (+ (b_G$ (pair$ ?v1 ?v0!8)) ?x230 ?x1662) 0))))))
blanchet@57170
  2101
))
blanchet@57170
  2102
(let ((@x1693 (nnf-neg (refl (~ $x1681 $x1681)) (nnf-neg (refl (~ $x1684 $x1684)) (~ (not $x1676) $x1687)) (~ (not (or (not (and $x1660 $x1665)) $x1676)) $x1691))))
blanchet@57170
  2103
(let ((@x1695 (trans (sk (~ $x1131 (not (or (not (and $x1660 $x1665)) $x1676)))) @x1693 (~ $x1131 $x1691))))
blanchet@57170
  2104
(let ((@x1654 (monotonicity (nnf-neg (refl (~ (not $x1077) (not $x1077))) (~ $x1083 $x1641)) (refl (~ $x212 $x212)) (refl (~ $x215 $x215)) (refl (~ $x217 $x217)) (refl (~ $x220 $x220)) (~ $x1089 $x1652))))
blanchet@57170
  2105
(let ((@x1771 (nnf-neg (nnf-neg @x1654 (~ (not $x1094) $x1652)) (nnf-neg @x1695 @x1763 (~ (not $x1161) $x1764)) (~ (not $x1164) $x1768))))
blanchet@57170
  2106
(let ((@x1631 (nnf-pos (monotonicity (refl (~ $x1009 $x1009)) (sk (~ $x1031 $x1623)) (~ $x1034 $x1626)) (~ $x1037 $x1629))))
blanchet@57170
  2107
(let ((@x1596 (nnf-pos (monotonicity (refl (~ $x954 $x954)) (sk (~ $x974 $x1588)) (~ $x977 $x1591)) (~ $x980 $x1594))))
blanchet@57170
  2108
(let ((@x1634 (monotonicity @x1596 (refl (~ $x173 $x173)) (nnf-pos (refl (~ (>= ?x174 0) (>= ?x174 0))) (~ $x1051 $x1051)) (nnf-pos (refl (~ $x1042 $x1042)) (~ $x1045 $x1045)) (nnf-pos (refl (~ $x994 $x994)) (~ $x997 $x997)) @x1631 (~ $x1069 $x1632))))
blanchet@57170
  2109
(let ((@x2006 (nnf-neg (nnf-neg @x1634 (~ (not $x1074) $x1632)) (nnf-neg @x1771 @x1998 (~ (not $x1371) $x1999)) (~ (not $x1374) $x2003))))
blanchet@57170
  2110
(let (($x1555 (exists ((?v1 B_Vertex$) )(let ((?x1540 (v_b_SP_G_0$ ?v0!5)))
blanchet@57170
  2111
(let ((?x1541 (* (- 1) ?x1540)))
blanchet@57170
  2112
(let ((?x128 (v_b_SP_G_0$ ?v1)))
blanchet@57170
  2113
(let (($x136 (v_b_Visited_G_0$ ?v1)))
blanchet@57170
  2114
(and (not (>= (+ ?x128 ?x1541) 0)) $x136 (= (+ ?x128 ?x1541 (b_G$ (pair$ ?v1 ?v0!5))) 0)))))))
blanchet@57170
  2115
))
blanchet@57170
  2116
(let ((@x1573 (nnf-neg (refl (~ $x1561 $x1561)) (nnf-neg (refl (~ $x1564 $x1564)) (~ (not $x1555) $x1567)) (~ (not (or (not (and $x1539 $x1544)) $x1555)) $x1571))))
blanchet@57170
  2117
(let ((@x1575 (trans (sk (~ (not $x980) (not (or (not (and $x1539 $x1544)) $x1555)))) @x1573 (~ (not $x980) $x1571))))
blanchet@57170
  2118
(let ((@x1536 (nnf-neg (nnf-pos (refl (~ $x936 $x936)) (~ $x939 $x939)) (~ (not $x942) $x939))))
blanchet@57170
  2119
(let ((@x2014 (nnf-neg @x1536 (nnf-neg @x1575 @x2006 (~ (not $x1377) $x2007)) (~ (not $x1380) $x2011))))
blanchet@57170
  2120
(let ((@x1509 (nnf-neg (nnf-pos (refl (~ $x911 $x911)) (~ $x914 $x914)) (~ (not $x917) $x914))))
blanchet@57170
  2121
(let ((@x2022 (nnf-neg @x1509 (nnf-neg (sk (~ $x942 $x1527)) @x2014 (~ (not $x1383) $x2015)) (~ (not $x1386) $x2019))))
blanchet@57170
  2122
(let ((@x1486 (nnf-neg (nnf-pos (refl (~ (>= ?x128 0) (>= ?x128 0))) (~ $x899 $x899)) (~ (not $x902) $x899))))
blanchet@57170
  2123
(let ((@x2030 (nnf-neg @x1486 (nnf-neg (sk (~ $x917 $x1500)) @x2022 (~ (not $x1389) $x2023)) (~ (not $x1392) $x2027))))
blanchet@57170
  2124
(let ((@x2038 (nnf-neg (refl (~ $x1471 $x1471)) (nnf-neg (sk (~ $x902 $x1477)) @x2030 (~ (not $x1395) $x2031)) (~ (not $x1398) $x2035))))
blanchet@57170
  2125
(let ((@x2042 (mp~ (not-or-elim (mp (asserted $x349) @x1411 $x1407) (not $x1401)) (nnf-neg (refl (~ $x869 $x869)) @x2038 (~ (not $x1401) $x2039)) $x2039)))
blanchet@57170
  2126
(let ((@x3878 (mp (mp (mp @x2042 (monotonicity @x2343 (= $x2039 $x2344)) $x2344) @x3020 $x3018) (monotonicity @x3874 (= $x3018 $x3875)) $x3875)))
blanchet@57170
  2127
(let ((@x4209 (unit-resolution @x3878 (lemma (unit-resolution @x5763 @x3492 (hypothesis $x869) false) $x145) $x3872)))
blanchet@57170
  2128
(let ((@x4211 (unit-resolution (def-axiom (or $x3866 $x1477 $x3860)) (unit-resolution (def-axiom (or $x3869 $x3863)) @x4209 $x3863) (lemma @x6353 $x1476) $x3860)))
blanchet@57170
  2129
(let ((@x6165 (unit-resolution ((_ quant-inst ?v0!2) (or (not $x3500) $x2348)) @x3505 (hypothesis $x1491) false)))
blanchet@57170
  2130
(let ((@x4215 (unit-resolution (def-axiom (or $x3854 $x2368 $x3848)) (unit-resolution (def-axiom (or $x2363 $x1491)) (lemma @x6165 $x2348) $x2363) (unit-resolution (def-axiom (or $x3857 $x3851)) @x4211 $x3851) $x3848)))
blanchet@57170
  2131
(let ((@x4217 (unit-resolution (def-axiom (or $x3842 $x2414 $x3836)) (unit-resolution (def-axiom (or $x3845 $x3839)) @x4215 $x3839) (unit-resolution (def-axiom (or $x2409 $x1512)) (lemma @x3073 $x2394) $x2409) $x3836)))
blanchet@57170
  2132
(let ((@x4219 (unit-resolution (def-axiom (or $x3830 $x3544 $x3824)) (unit-resolution (def-axiom (or $x3833 $x3827)) @x4217 $x3827) (lemma @x5735 $x3541) $x3824)))
blanchet@57170
  2133
(let ((@x5955 (unit-resolution (def-axiom (or $x3821 $x3556)) @x4219 $x3556)))
blanchet@57170
  2134
(let (($x4373 (or $x3561 $x3904)))
blanchet@57170
  2135
(let ((@x4363 ((_ quant-inst v_b_v_G_1$) $x4373)))
blanchet@57170
  2136
(let ((@x5049 (unit-resolution @x4363 @x5955 $x3904)))
blanchet@57170
  2137
(let ((?x5210 (pair$ v_b_v_G_1$ ?v0!15)))
blanchet@57170
  2138
(let ((?x5018 (b_G$ ?x5210)))
blanchet@57170
  2139
(let ((?x4456 (* (- 1) ?x1846)))
blanchet@57170
  2140
(let ((?x6267 (+ ?x257 ?x4456 ?x5018)))
blanchet@57170
  2141
(let (($x5853 (<= ?x6267 0)))
blanchet@57170
  2142
(let (($x6128 (= ?x6267 0)))
blanchet@57170
  2143
(let (($x6822 (>= (+ ?x257 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0!15)) ?x5018) 0)))
blanchet@57170
  2144
(let (($x4911 (<= (+ b_Infinity$ (* (- 1) ?x5018)) 0)))
blanchet@57170
  2145
(let (($x6706 (or $x4911 $x6822)))
blanchet@57170
  2146
(let (($x6711 (not $x6706)))
blanchet@57170
  2147
(let ((@x5703 (hypothesis $x1848)))
blanchet@57170
  2148
(let (($x5745 (or (not (>= (+ ?x1846 (* (- 1) (fun_app$c v_b_SP_G_1$ ?v0!15))) 0)) $x1847)))
blanchet@57170
  2149
(let ((?x4480 (fun_app$c v_b_SP_G_1$ ?v0!15)))
blanchet@57170
  2150
(let (($x5850 (>= ?x4480 0)))
blanchet@57170
  2151
(let ((@x5698 ((_ th-lemma arith farkas -1 1 1) @x5703 (hypothesis (>= (+ ?x1846 (* (- 1) ?x4480)) 0)) (unit-resolution ((_ quant-inst ?v0!15) (or $x3561 $x5850)) @x5955 $x5850) false)))
blanchet@57170
  2152
(let ((@x6183 (unit-resolution (lemma @x5698 $x5745) @x5703 (not (>= (+ ?x1846 (* (- 1) ?x4480)) 0)))))
blanchet@57170
  2153
(let ((@x6242 ((_ th-lemma arith triangle-eq) (or (not (= ?x1846 ?x4480)) (>= (+ ?x1846 (* (- 1) ?x4480)) 0)))))
blanchet@57170
  2154
(let ((@x4529 (unit-resolution (def-axiom (or $x3821 $x173)) @x4219 $x173)))
blanchet@57170
  2155
(let ((@x5142 (hypothesis $x3657)))
blanchet@57170
  2156
(let ((@x4265 (unit-resolution (def-axiom (or $x3654 $x217)) @x5142 $x217)))
blanchet@57170
  2157
(let ((?x5667 (fun_app$c v_b_SP_G_1$ ?v1!10)))
blanchet@57170
  2158
(let ((?x5152 (fun_app$c v_b_SP_G_1$ ?v0!11)))
blanchet@57170
  2159
(let ((?x5630 (* (- 1) ?x5152)))
blanchet@57170
  2160
(let (($x4072 (>= (+ ?x1727 ?x5630 ?x5667) 0)))
blanchet@57170
  2161
(let (($x5699 (fun_app$ v_b_Visited_G_1$ ?v1!10)))
blanchet@57170
  2162
(let (($x1725 (not $x1724)))
blanchet@57170
  2163
(let ((@x4170 (hypothesis $x2650)))
blanchet@57170
  2164
(let (($x4150 (>= (+ ?x1721 (* (- 1) ?x5667)) 0)))
blanchet@57170
  2165
(let ((@x4195 (monotonicity (symm (hypothesis $x217) (= v_b_SP_G_1$ v_b_SP_G_3$)) (= ?x5667 ?x1721))))
blanchet@57170
  2166
(let ((@x4203 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x1721 ?x5667)) $x4150)) (symm @x4195 (= ?x1721 ?x5667)) $x4150)))
blanchet@57170
  2167
(let (($x4167 (or (not (<= (+ b_Infinity$ (* (- 1) ?x5667)) 0)) (not $x4150) $x1724)))
blanchet@57170
  2168
(let ((@x4163 ((_ th-lemma arith farkas 1 -1 1) (hypothesis $x4150) (hypothesis (<= (+ b_Infinity$ (* (- 1) ?x5667)) 0)) (hypothesis $x1725) false)))
blanchet@57170
  2169
(let ((@x4204 (unit-resolution (lemma @x4163 $x4167) @x4203 (unit-resolution (def-axiom (or $x2645 $x1725)) @x4170 $x1725) (not (<= (+ b_Infinity$ (* (- 1) ?x5667)) 0)))))
blanchet@57170
  2170
(let (($x6045 (<= (+ b_Infinity$ (* (- 1) ?x5667)) 0)))
blanchet@57170
  2171
(let (($x5247 (or $x5699 $x6045)))
blanchet@57170
  2172
(let ((@x3048 (mp ((_ quant-inst ?v1!10) (or $x3595 $x5247)) (rewrite (= (or $x3595 $x5247) (or $x3595 $x5699 $x6045))) (or $x3595 $x5699 $x6045))))
blanchet@57170
  2173
(let ((@x4206 (unit-resolution (unit-resolution @x3048 (hypothesis $x3590) $x5247) @x4204 $x5699)))
blanchet@57170
  2174
(let ((@x4223 (unit-resolution (def-axiom (or $x3821 $x3573)) @x4219 $x3573)))
blanchet@57170
  2175
(let (($x5758 (not $x5699)))
blanchet@57170
  2176
(let (($x4064 (or $x3578 $x5758 $x1730 $x4072)))
blanchet@57170
  2177
(let (($x5845 (or $x5758 $x1730 (>= (+ ?x1727 ?x5667 ?x5630) 0))))
blanchet@57170
  2178
(let (($x4065 (or $x3578 $x5845)))
blanchet@57170
  2179
(let ((@x4061 (monotonicity (rewrite (= (+ ?x1727 ?x5667 ?x5630) (+ ?x1727 ?x5630 ?x5667))) (= (>= (+ ?x1727 ?x5667 ?x5630) 0) $x4072))))
blanchet@57170
  2180
(let ((@x4102 (monotonicity (monotonicity @x4061 (= $x5845 (or $x5758 $x1730 $x4072))) (= $x4065 (or $x3578 (or $x5758 $x1730 $x4072))))))
blanchet@57170
  2181
(let ((@x4106 (trans @x4102 (rewrite (= (or $x3578 (or $x5758 $x1730 $x4072)) $x4064)) (= $x4065 $x4064))))
blanchet@57170
  2182
(let ((@x4225 (unit-resolution (mp ((_ quant-inst ?v0!11 ?v1!10) $x4065) @x4106 $x4064) @x4223 (unit-resolution (def-axiom (or $x2645 (not $x1730))) @x4170 (not $x1730)) (or $x5758 $x4072))))
blanchet@57170
  2183
(let ((@x4228 (monotonicity (symm (hypothesis $x217) (= v_b_SP_G_1$ v_b_SP_G_3$)) (= ?x5152 ?x1734))))
blanchet@57170
  2184
(let ((@x4234 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x1734 ?x5152)) (<= (+ ?x1734 ?x5630) 0))) (symm @x4228 (= ?x1734 ?x5152)) (<= (+ ?x1734 ?x5630) 0))))
blanchet@57170
  2185
(let ((@x4235 ((_ th-lemma arith farkas -1 -1 1 1) @x4234 (unit-resolution (def-axiom (or $x2645 (not $x2209))) @x4170 (not $x2209)) @x4203 (unit-resolution @x4225 @x4206 $x4072) false)))
blanchet@57170
  2186
(let ((@x4885 (unit-resolution (lemma @x4235 (or $x2645 $x3595 $x2708)) @x4265 (unit-resolution (def-axiom (or $x3654 $x3590)) @x5142 $x3590) $x2645)))
blanchet@57170
  2187
(let (($x4595 (<= (+ ?x1661 (* (- 1) (fun_app$c v_b_SP_G_3$ (?v1!7 ?v0!8)))) 0)))
blanchet@57170
  2188
(let ((?x3922 (?v1!7 ?v0!8)))
blanchet@57170
  2189
(let ((?x3910 (fun_app$c v_b_SP_G_1$ ?x3922)))
blanchet@57170
  2190
(let ((?x3989 (* (- 1) ?x3910)))
blanchet@57170
  2191
(let ((?x3142 (fun_app$c v_b_SP_G_1$ ?v0!8)))
blanchet@57170
  2192
(let (($x3936 (<= (+ ?x3142 ?x3989) 0)))
blanchet@57170
  2193
(let (($x4266 (not $x3936)))
blanchet@57170
  2194
(let ((?x3945 (pair$ ?x3922 ?v0!8)))
blanchet@57170
  2195
(let ((?x3946 (b_G$ ?x3945)))
blanchet@57170
  2196
(let ((?x3031 (* (- 1) ?x3946)))
blanchet@57170
  2197
(let ((?x3056 (+ ?x3142 ?x3989 ?x3031)))
blanchet@57170
  2198
(let (($x3032 (= ?x3056 0)))
blanchet@57170
  2199
(let (($x3033 (not $x3032)))
blanchet@57170
  2200
(let (($x3034 (or $x3936 (not (fun_app$ v_b_Visited_G_1$ ?x3922)) $x3033)))
blanchet@57170
  2201
(let (($x3049 (not $x3034)))
blanchet@57170
  2202
(let ((@x3978 (hypothesis $x1665)))
blanchet@57170
  2203
(let ((?x3144 (* (- 1) ?x3142)))
blanchet@57170
  2204
(let ((?x3984 (+ ?x1661 ?x3144)))
blanchet@57170
  2205
(let (($x3969 (>= ?x3984 0)))
blanchet@57170
  2206
(let ((@x4544 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x1661 ?x3142)) $x3969)) (monotonicity @x4265 (= ?x1661 ?x3142)) $x3969)))
blanchet@57170
  2207
(let ((@x3973 ((_ th-lemma arith farkas 1 -1 1) (hypothesis $x3969) (hypothesis (<= (+ b_Infinity$ ?x3144) 0)) @x3978 false)))
blanchet@57170
  2208
(let ((@x4027 (lemma @x3973 (or (not (<= (+ b_Infinity$ ?x3144) 0)) (not $x3969) $x1664))))
blanchet@57170
  2209
(let ((@x4552 (unit-resolution @x4027 @x4544 @x3978 (not (<= (+ b_Infinity$ ?x3144) 0)))))
blanchet@57170
  2210
(let ((@x3425 (def-axiom (or $x3630 $x1749))))
blanchet@57170
  2211
(let ((@x4543 (unit-resolution @x3425 (trans (monotonicity @x4265 (= ?x245 ?x172)) @x4529 $x246) $x3630)))
blanchet@57170
  2212
(let ((@x3134 (def-axiom (or $x3639 $x2650 $x3633))))
blanchet@57170
  2213
(let ((@x3138 (def-axiom (or $x3642 $x3636))))
blanchet@57170
  2214
(let ((@x3120 (def-axiom (or $x3651 $x3611 $x3645))))
blanchet@57170
  2215
(let ((@x4905 (unit-resolution @x3120 (unit-resolution @x3138 (unit-resolution @x3134 @x4543 @x4885 $x3639) $x3642) (unit-resolution (def-axiom (or $x3654 $x3648)) @x5142 $x3648) $x3611)))
blanchet@57170
  2216
(let ((@x4545 (unit-resolution (def-axiom (or $x3821 $x3581)) @x4219 $x3581)))
blanchet@57170
  2217
(let (($x4738 (= (or $x3586 (or $x1659 (<= (+ b_Infinity$ ?x3144) 0) $x3049)) (or $x3586 $x1659 (<= (+ b_Infinity$ ?x3144) 0) $x3049))))
blanchet@57170
  2218
(let ((@x4737 ((_ quant-inst ?v0!8) (or $x3586 (or $x1659 (<= (+ b_Infinity$ ?x3144) 0) $x3049)))))
blanchet@57170
  2219
(let ((@x5209 (mp @x4737 (rewrite $x4738) (or $x3586 $x1659 (<= (+ b_Infinity$ ?x3144) 0) $x3049))))
blanchet@57170
  2220
(let ((@x4406 (unit-resolution @x5209 @x4545 (unit-resolution (def-axiom (or $x3608 $x1660)) @x4905 $x1660) @x4552 $x3049)))
blanchet@57170
  2221
(let ((?x3126 (fun_app$c v_b_SP_G_3$ ?x3922)))
blanchet@57170
  2222
(let ((?x4327 (+ ?x3126 ?x3989)))
blanchet@57170
  2223
(let (($x4402 (<= ?x4327 0)))
blanchet@57170
  2224
(let ((@x4541 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x3126 ?x3910)) $x4402)) (monotonicity @x4265 (= ?x3126 ?x3910)) $x4402)))
blanchet@57170
  2225
(let ((@x4852 ((_ th-lemma arith farkas 1 -1 -1 1) (hypothesis $x3969) (hypothesis $x4595) (hypothesis $x4402) (hypothesis $x4266) false)))
blanchet@57170
  2226
(let ((@x4542 (unit-resolution (lemma @x4852 (or (not $x4595) (not $x3969) (not $x4402) $x3936)) @x4544 @x4541 (unit-resolution (def-axiom (or $x3034 $x4266)) @x4406 $x4266) (not $x4595))))
blanchet@57170
  2227
(let ((?x5182 (* (- 1) ?x3126)))
blanchet@57170
  2228
(let ((?x4179 (+ ?x1661 ?x5182 ?x3031)))
blanchet@57170
  2229
(let (($x5089 (= ?x4179 0)))
blanchet@57170
  2230
(let (($x3918 (>= ?x4179 0)))
blanchet@57170
  2231
(let (($x5284 (>= ?x3056 0)))
blanchet@57170
  2232
(let ((@x4264 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x3033 $x5284)) (unit-resolution (def-axiom (or $x3034 $x3032)) @x4406 $x3032) $x5284)))
blanchet@57170
  2233
(let ((@x5267 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 1) (or $x3918 (not $x5284) (not $x3969) (not $x4402))) @x4264 @x4544 @x4541 $x3918)))
blanchet@57170
  2234
(let (($x3917 (<= ?x4179 0)))
blanchet@57170
  2235
(let (($x4407 (>= ?x4327 0)))
blanchet@57170
  2236
(let ((@x4549 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x3126 ?x3910)) $x4407)) (monotonicity @x4265 (= ?x3126 ?x3910)) $x4407)))
blanchet@57170
  2237
(let (($x3979 (<= ?x3984 0)))
blanchet@57170
  2238
(let ((@x6239 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x1661 ?x3142)) $x3979)) (monotonicity @x4265 (= ?x1661 ?x3142)) $x3979)))
blanchet@57170
  2239
(let (($x5179 (<= ?x3056 0)))
blanchet@57170
  2240
(let ((@x3960 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x3033 $x5179)) (unit-resolution (def-axiom (or $x3034 $x3032)) @x4406 $x3032) $x5179)))
blanchet@57170
  2241
(let ((@x4631 (unit-resolution ((_ th-lemma arith assign-bounds -1 -1 1) (or $x3917 (not $x5179) (not $x3979) (not $x4407))) @x3960 @x6239 @x4549 $x3917)))
blanchet@57170
  2242
(let ((@x4760 (unit-resolution ((_ th-lemma arith triangle-eq) (or $x5089 (not $x3917) (not $x3918))) @x4631 @x5267 $x5089)))
blanchet@57170
  2243
(let (($x4746 (not $x5089)))
blanchet@57170
  2244
(let (($x4181 (or $x4595 $x4746)))
blanchet@57170
  2245
(let (($x3184 (or $x3605 $x4595 $x4746)))
blanchet@57170
  2246
(let (($x5980 (>= (+ ?x3126 ?x1662) 0)))
blanchet@57170
  2247
(let (($x5913 (or $x5980 (not (= (+ ?x3126 ?x1662 ?x3946) 0)))))
blanchet@57170
  2248
(let (($x3976 (or $x3605 $x5913)))
blanchet@57170
  2249
(let ((@x4178 (monotonicity (rewrite (= (+ ?x3126 ?x1662 ?x3946) (+ ?x1662 ?x3126 ?x3946))) (= (= (+ ?x3126 ?x1662 ?x3946) 0) (= (+ ?x1662 ?x3126 ?x3946) 0)))))
blanchet@57170
  2250
(let ((@x4745 (trans @x4178 (rewrite (= (= (+ ?x1662 ?x3126 ?x3946) 0) $x5089)) (= (= (+ ?x3126 ?x1662 ?x3946) 0) $x5089))))
blanchet@57170
  2251
(let ((@x5181 (monotonicity (rewrite (= (+ ?x3126 ?x1662) (+ ?x1662 ?x3126))) (= $x5980 (>= (+ ?x1662 ?x3126) 0)))))
blanchet@57170
  2252
(let ((@x4634 (trans @x5181 (rewrite (= (>= (+ ?x1662 ?x3126) 0) $x4595)) (= $x5980 $x4595))))
blanchet@57170
  2253
(let ((@x4184 (monotonicity @x4634 (monotonicity @x4745 (= (not (= (+ ?x3126 ?x1662 ?x3946) 0)) $x4746)) (= $x5913 $x4181))))
blanchet@57170
  2254
(let ((@x3916 (trans (monotonicity @x4184 (= $x3976 (or $x3605 $x4181))) (rewrite (= (or $x3605 $x4181) $x3184)) (= $x3976 $x3184))))
blanchet@57170
  2255
(let ((@x5060 (unit-resolution (mp ((_ quant-inst (?v1!7 ?v0!8)) $x3976) @x3916 $x3184) (unit-resolution (def-axiom (or $x3608 $x3600)) @x4905 $x3600) $x4181)))
blanchet@57170
  2256
(let ((@x6153 (unit-resolution (lemma (unit-resolution @x5060 @x4760 @x4542 false) (or $x3654 $x1664)) @x5142 $x1664)))
blanchet@57170
  2257
(let ((@x6273 (unit-resolution @x3120 (unit-resolution (def-axiom (or $x3608 $x1665)) @x6153 $x3608) (unit-resolution (def-axiom (or $x3654 $x3648)) @x5142 $x3648) $x3645)))
blanchet@57170
  2258
(let ((@x5939 (unit-resolution @x3425 (unit-resolution @x3134 (unit-resolution @x3138 @x6273 $x3636) @x4885 $x3633) $x1749)))
blanchet@57170
  2259
(let ((@x5914 (unit-resolution @x5939 (trans (monotonicity @x4265 (= ?x245 ?x172)) @x4529 $x246) false)))
blanchet@57170
  2260
(let ((@x6386 (unit-resolution (def-axiom (or $x3818 $x3657 $x3812)) (unit-resolution (def-axiom (or $x3821 $x3815)) @x4219 $x3815) $x3815)))
blanchet@57170
  2261
(let ((@x6181 (unit-resolution @x6386 (lemma @x5914 $x3654) $x3812)))
blanchet@57170
  2262
(let ((@x5944 (unit-resolution (def-axiom (or $x3809 $x3678)) @x6181 $x3678)))
blanchet@57170
  2263
(let (($x4481 (= ?x1846 ?x4480)))
blanchet@57170
  2264
(let (($x3188 (or $x3683 $x6711 $x4481)))
blanchet@57170
  2265
(let (($x5285 (or (not (or $x4911 (<= (+ ?x4480 ?x1173 (* (- 1) ?x5018)) 0))) $x4481)))
blanchet@57170
  2266
(let (($x6363 (or $x3683 $x5285)))
blanchet@57170
  2267
(let (($x5370 (<= (+ ?x4480 ?x1173 (* (- 1) ?x5018)) 0)))
blanchet@57170
  2268
(let ((@x4465 (rewrite (= (+ ?x4480 ?x1173 (* (- 1) ?x5018)) (+ ?x1173 ?x4480 (* (- 1) ?x5018))))))
blanchet@57170
  2269
(let ((@x6818 (monotonicity @x4465 (= $x5370 (<= (+ ?x1173 ?x4480 (* (- 1) ?x5018)) 0)))))
blanchet@57170
  2270
(let ((@x6705 (trans @x6818 (rewrite (= (<= (+ ?x1173 ?x4480 (* (- 1) ?x5018)) 0) $x6822)) (= $x5370 $x6822))))
blanchet@57170
  2271
(let ((@x5840 (monotonicity (monotonicity @x6705 (= (or $x4911 $x5370) $x6706)) (= (not (or $x4911 $x5370)) $x6711))))
blanchet@57170
  2272
(let ((@x6545 (monotonicity (monotonicity @x5840 (= $x5285 (or $x6711 $x4481))) (= $x6363 (or $x3683 (or $x6711 $x4481))))))
blanchet@57170
  2273
(let ((@x4811 (trans @x6545 (rewrite (= (or $x3683 (or $x6711 $x4481)) $x3188)) (= $x6363 $x3188))))
blanchet@57170
  2274
(let ((@x6726 (unit-resolution (mp ((_ quant-inst ?v0!15) $x6363) @x4811 $x3188) @x5944 (unit-resolution @x6242 @x6183 (not $x4481)) $x6711)))
blanchet@57170
  2275
(let ((@x6470 (unit-resolution (def-axiom (or $x6706 (not $x4911))) (hypothesis $x6711) (not $x4911))))
blanchet@57170
  2276
(let ((@x6494 (unit-resolution (def-axiom (or $x6706 (not $x6822))) (hypothesis $x6711) (not $x6822))))
blanchet@57170
  2277
(let (($x6511 (or $x4911 $x6822 $x6128)))
blanchet@57170
  2278
(let ((@x6588 (unit-resolution (def-axiom (or $x3809 $x3670)) @x6181 $x3670)))
blanchet@57170
  2279
(let (($x6235 (or $x3675 $x4911 $x6822 $x6128)))
blanchet@57170
  2280
(let (($x6510 (or $x4911 $x5370 (= (+ ?x257 ?x5018 ?x4456) 0))))
blanchet@57170
  2281
(let (($x6263 (or $x3675 $x6510)))
blanchet@57170
  2282
(let ((@x6480 (monotonicity (rewrite (= (+ ?x257 ?x5018 ?x4456) ?x6267)) (= (= (+ ?x257 ?x5018 ?x4456) 0) $x6128))))
blanchet@57170
  2283
(let ((@x4472 (monotonicity (monotonicity @x6705 @x6480 (= $x6510 $x6511)) (= $x6263 (or $x3675 $x6511)))))
blanchet@57170
  2284
(let ((@x5852 (mp ((_ quant-inst ?v0!15) $x6263) (trans @x4472 (rewrite (= (or $x3675 $x6511) $x6235)) (= $x6263 $x6235)) $x6235)))
blanchet@57170
  2285
(let ((@x6501 (unit-resolution (unit-resolution @x5852 @x6588 $x6511) @x6494 @x6470 (hypothesis (not $x6128)) false)))
blanchet@57170
  2286
(let ((@x4608 (lemma @x6501 (or $x6706 $x6128))))
blanchet@57170
  2287
(let ((@x6959 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x6128) $x5853)) (unit-resolution @x4608 @x6726 $x6128) $x5853)))
blanchet@57170
  2288
(let (($x6603 (>= ?x5018 0)))
blanchet@57170
  2289
(let (($x6582 (<= ?x5018 0)))
blanchet@57170
  2290
(let (($x6583 (not $x6582)))
blanchet@57170
  2291
(let (($x6156 (= v_b_v_G_1$ ?v0!15)))
blanchet@57170
  2292
(let (($x5538 (not $x6156)))
blanchet@57170
  2293
(let ((@x7337 (symm (commutativity (= $x6156 (= ?v0!15 v_b_v_G_1$))) (= (= ?v0!15 v_b_v_G_1$) $x6156))))
blanchet@57170
  2294
(let (($x6631 (= ?v0!15 v_b_v_G_1$)))
blanchet@57170
  2295
(let (($x7483 (not $x6631)))
blanchet@57170
  2296
(let (($x6269 (fun_app$ v_b_Visited_G_1$ ?v0!15)))
blanchet@57170
  2297
(let (($x7698 (or $x6631 $x6269)))
blanchet@57170
  2298
(let (($x6630 (fun_app$ ?x265 ?v0!15)))
blanchet@57170
  2299
(let (($x7702 (= $x6630 $x7698)))
blanchet@57170
  2300
(let (($x3468 (forall ((?v0 B_Vertex_bool_fun$) (?v1 B_Vertex$) (?v2 Bool) (?v3 B_Vertex$) )(!(let (($x67 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3)))
blanchet@57170
  2301
(= $x67 (ite (= ?v3 ?v1) ?v2 (fun_app$ ?v0 ?v3)))) :pattern ( (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3) )))
blanchet@57170
  2302
))
blanchet@57170
  2303
(let (($x77 (forall ((?v0 B_Vertex_bool_fun$) (?v1 B_Vertex$) (?v2 Bool) (?v3 B_Vertex$) )(let (($x67 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3)))
blanchet@57170
  2304
(= $x67 (ite (= ?v3 ?v1) ?v2 (fun_app$ ?v0 ?v3)))))
blanchet@57170
  2305
))
blanchet@57170
  2306
(let (($x67 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?3) ?2) ?1) ?0)))
blanchet@57170
  2307
(let (($x74 (= $x67 (ite (= ?0 ?2) ?1 (fun_app$ ?3 ?0)))))
blanchet@57170
  2308
(let (($x72 (forall ((?v0 B_Vertex_bool_fun$) (?v1 B_Vertex$) (?v2 Bool) (?v3 B_Vertex$) )(let (($x67 (fun_app$ (fun_app$a (fun_app$b (fun_upd$ ?v0) ?v1) ?v2) ?v3)))
blanchet@57170
  2309
(= $x67 (ite (= ?v3 ?v1) ?v2 (fun_app$ ?v0 ?v3)))))
blanchet@57170
  2310
))
blanchet@57170
  2311
(let ((@x76 (rewrite (= (= $x67 (ite (= ?0 ?2) ?1 (fun_app$ ?3 ?0))) $x74))))
blanchet@57170
  2312
(let ((@x1443 (mp~ (mp (asserted $x72) (quant-intro @x76 (= $x72 $x77)) $x77) (nnf-pos (refl (~ $x74 $x74)) (~ $x77 $x77)) $x77)))
blanchet@57170
  2313
(let ((@x3473 (mp @x1443 (quant-intro (refl (= $x74 $x74)) (= $x77 $x3468)) $x3468)))
blanchet@57170
  2314
(let (($x4114 (not $x3468)))
blanchet@57170
  2315
(let (($x6435 (or $x4114 $x7702)))
blanchet@57170
  2316
(let ((@x5925 (monotonicity (rewrite (= (ite $x6631 true $x6269) $x7698)) (= (= $x6630 (ite $x6631 true $x6269)) $x7702))))
blanchet@57170
  2317
(let ((@x6213 (monotonicity @x5925 (= (or $x4114 (= $x6630 (ite $x6631 true $x6269))) $x6435))))
blanchet@57170
  2318
(let ((@x7487 (trans @x6213 (rewrite (= $x6435 $x6435)) (= (or $x4114 (= $x6630 (ite $x6631 true $x6269))) $x6435))))
blanchet@57170
  2319
(let ((@x7488 (mp ((_ quant-inst v_b_Visited_G_1$ v_b_v_G_1$ true ?v0!15) (or $x4114 (= $x6630 (ite $x6631 true $x6269)))) @x7487 $x6435)))
blanchet@57170
  2320
(let ((@x5875 (symm (unit-resolution (def-axiom (or $x3809 $x266)) @x6181 $x266) (= ?x265 v_b_Visited_G_2$))))
blanchet@57170
  2321
(let ((@x7321 (symm (monotonicity @x5875 (= $x6630 (fun_app$ v_b_Visited_G_2$ ?v0!15))) (= (fun_app$ v_b_Visited_G_2$ ?v0!15) $x6630))))
blanchet@57170
  2322
(let ((@x7322 (monotonicity @x7321 (= (not (fun_app$ v_b_Visited_G_2$ ?v0!15)) (not $x6630)))))
blanchet@57170
  2323
(let (($x4415 (fun_app$ v_b_Visited_G_2$ ?v0!15)))
blanchet@57170
  2324
(let (($x4479 (not $x4415)))
blanchet@57170
  2325
(let ((?x5054 (b_G$ (pair$ v_b_v_G_1$ ?v0!13))))
blanchet@57170
  2326
(let ((?x4706 (+ ?x257 ?x1810 ?x5054)))
blanchet@57170
  2327
(let (($x4687 (= ?x4706 0)))
blanchet@57170
  2328
(let (($x5187 (>= (+ ?x257 (* (- 1) ?x1808) ?x5054) 0)))
blanchet@57170
  2329
(let (($x5051 (<= (+ b_Infinity$ (* (- 1) ?x5054)) 0)))
blanchet@57170
  2330
(let (($x5186 (or $x5051 $x5187)))
blanchet@57170
  2331
(let (($x5221 (not $x5186)))
blanchet@57170
  2332
(let ((@x5744 (monotonicity (commutativity (= (= ?x1808 ?x1809) (= ?x1809 ?x1808))) (= (not (= ?x1808 ?x1809)) (not (= ?x1809 ?x1808))))))
blanchet@57170
  2333
(let (($x5690 (not (= ?x1808 ?x1809))))
blanchet@57170
  2334
(let ((@x5726 (mp (unit-resolution ((_ th-lemma arith triangle-eq) (or $x5690 $x1812)) (hypothesis $x1813) $x5690) @x5744 (not (= ?x1809 ?x1808)))))
blanchet@57170
  2335
(let (($x5270 (= ?x1809 ?x1808)))
blanchet@57170
  2336
(let (($x5230 (or $x5221 $x5270)))
blanchet@57170
  2337
(let ((@x4739 (hypothesis $x3678)))
blanchet@57170
  2338
(let (($x5327 (or $x3683 $x5221 $x5270)))
blanchet@57170
  2339
(let (($x5333 (or (not (or $x5051 (<= (+ ?x1808 ?x1173 (* (- 1) ?x5054)) 0))) $x5270)))
blanchet@57170
  2340
(let (($x5268 (or $x3683 $x5333)))
blanchet@57170
  2341
(let (($x5095 (<= (+ ?x1808 ?x1173 (* (- 1) ?x5054)) 0)))
blanchet@57170
  2342
(let ((@x5120 (rewrite (= (+ ?x1808 ?x1173 (* (- 1) ?x5054)) (+ ?x1173 ?x1808 (* (- 1) ?x5054))))))
blanchet@57170
  2343
(let ((@x5127 (monotonicity @x5120 (= $x5095 (<= (+ ?x1173 ?x1808 (* (- 1) ?x5054)) 0)))))
blanchet@57170
  2344
(let ((@x4705 (trans @x5127 (rewrite (= (<= (+ ?x1173 ?x1808 (* (- 1) ?x5054)) 0) $x5187)) (= $x5095 $x5187))))
blanchet@57170
  2345
(let ((@x5229 (monotonicity (monotonicity @x4705 (= (or $x5051 $x5095) $x5186)) (= (not (or $x5051 $x5095)) $x5221))))
blanchet@57170
  2346
(let ((@x5269 (monotonicity (monotonicity @x5229 (= $x5333 $x5230)) (= $x5268 (or $x3683 $x5230)))))
blanchet@57170
  2347
(let ((@x5432 (mp ((_ quant-inst ?v0!13) $x5268) (trans @x5269 (rewrite (= (or $x3683 $x5230) $x5327)) (= $x5268 $x5327)) $x5327)))
blanchet@57170
  2348
(let ((@x5729 (unit-resolution (def-axiom (or $x5186 (not $x5051))) (unit-resolution (unit-resolution @x5432 @x4739 $x5230) @x5726 $x5221) (not $x5051))))
blanchet@57170
  2349
(let ((@x5749 (unit-resolution (def-axiom (or $x5186 (not $x5187))) (unit-resolution (unit-resolution @x5432 @x4739 $x5230) @x5726 $x5221) (not $x5187))))
blanchet@57170
  2350
(let (($x5211 (or $x5051 $x5187 $x4687)))
blanchet@57170
  2351
(let ((@x5807 (hypothesis $x3670)))
blanchet@57170
  2352
(let (($x5189 (or $x3675 $x5051 $x5187 $x4687)))
blanchet@57170
  2353
(let (($x5102 (or $x5051 $x5095 (= (+ ?x257 ?x5054 ?x1810) 0))))
blanchet@57170
  2354
(let (($x5163 (or $x3675 $x5102)))
blanchet@57170
  2355
(let ((@x5164 (monotonicity (rewrite (= (+ ?x257 ?x5054 ?x1810) ?x4706)) (= (= (+ ?x257 ?x5054 ?x1810) 0) $x4687))))
blanchet@57170
  2356
(let ((@x5215 (monotonicity (monotonicity @x4705 @x5164 (= $x5102 $x5211)) (= $x5163 (or $x3675 $x5211)))))
blanchet@57170
  2357
(let ((@x5376 (mp ((_ quant-inst ?v0!13) $x5163) (trans @x5215 (rewrite (= (or $x3675 $x5211) $x5189)) (= $x5163 $x5189)) $x5189)))
blanchet@57170
  2358
(let ((@x5714 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not $x4687) (>= ?x4706 0))) (unit-resolution (unit-resolution @x5376 @x5807 $x5211) @x5749 @x5729 $x4687) (>= ?x4706 0))))
blanchet@57170
  2359
(let ((@x5723 (unit-resolution ((_ th-lemma arith farkas 1 1) (or (<= ?x1811 0) $x1812)) (hypothesis $x1813) (<= ?x1811 0))))
blanchet@57170
  2360
(let ((@x6888 (unit-resolution (lemma ((_ th-lemma arith farkas 1 -1 1) @x5723 @x5749 @x5714 false) (or $x1812 $x3675 $x3683)) @x6588 @x5944 $x1812)))
blanchet@57170
  2361
(let ((@x6891 (unit-resolution (def-axiom (or $x3806 $x1813 $x3800)) @x6888 (unit-resolution (def-axiom (or $x3809 $x3803)) @x6181 $x3803) $x3800)))
blanchet@57170
  2362
(let (($x6050 (= ?v0!14 v_b_v_G_1$)))
blanchet@57170
  2363
(let (($x5678 (fun_app$ v_b_Visited_G_1$ ?v0!14)))
blanchet@57170
  2364
(let (($x4963 (or $x6050 $x5678)))
blanchet@57170
  2365
(let (($x6049 (fun_app$ ?x265 ?v0!14)))
blanchet@57170
  2366
(let (($x6452 (= $x6049 $x4963)))
blanchet@57170
  2367
(let (($x5869 (or $x4114 $x6452)))
blanchet@57170
  2368
(let ((@x6355 (monotonicity (rewrite (= (ite $x6050 true $x5678) $x4963)) (= (= $x6049 (ite $x6050 true $x5678)) $x6452))))
blanchet@57170
  2369
(let ((@x5854 (monotonicity @x6355 (= (or $x4114 (= $x6049 (ite $x6050 true $x5678))) $x5869))))
blanchet@57170
  2370
(let ((@x6366 (trans @x5854 (rewrite (= $x5869 $x5869)) (= (or $x4114 (= $x6049 (ite $x6050 true $x5678))) $x5869))))
blanchet@57170
  2371
(let ((@x6233 (mp ((_ quant-inst v_b_Visited_G_1$ v_b_v_G_1$ true ?v0!14) (or $x4114 (= $x6049 (ite $x6050 true $x5678)))) @x6366 $x5869)))
blanchet@57170
  2372
(let ((@x6372 (symm (monotonicity @x5875 (= $x6049 (fun_app$ v_b_Visited_G_2$ ?v0!14))) (= (fun_app$ v_b_Visited_G_2$ ?v0!14) $x6049))))
blanchet@57170
  2373
(let (($x1824 (fun_app$ v_b_Visited_G_2$ ?v0!14)))
blanchet@57170
  2374
(let ((@x4837 (mp (unit-resolution (def-axiom (or $x1829 $x1824)) (hypothesis $x1830) $x1824) @x6372 $x6049)))
blanchet@57170
  2375
(let ((@x5037 (unit-resolution (def-axiom (or (not $x6452) (not $x6049) $x4963)) @x4837 (unit-resolution @x6233 @x3473 $x6452) $x4963)))
blanchet@57170
  2376
(let (($x4290 (not $x5678)))
blanchet@57170
  2377
(let ((?x5658 (* (- 1) ?x1827)))
blanchet@57170
  2378
(let ((?x4907 (+ ?x257 ?x5658)))
blanchet@57170
  2379
(let (($x6523 (>= ?x4907 0)))
blanchet@57170
  2380
(let (($x6556 (not $x6523)))
blanchet@57170
  2381
(let (($x4887 (>= (+ ?x257 ?x5658 (b_G$ (pair$ v_b_v_G_1$ ?v0!14))) 0)))
blanchet@57170
  2382
(let (($x4812 (not $x4887)))
blanchet@57170
  2383
(let (($x4783 (<= (+ b_Infinity$ (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0!14)))) 0)))
blanchet@57170
  2384
(let (($x5110 (or $x4783 $x4887)))
blanchet@57170
  2385
(let (($x5079 (not $x5110)))
blanchet@57170
  2386
(let ((@x5065 (unit-resolution (def-axiom (or $x1829 (not $x1828))) (hypothesis $x1830) (not $x1828))))
blanchet@57170
  2387
(let (($x4844 (or $x3683 $x5079 $x1828)))
blanchet@57170
  2388
(let (($x4891 (<= (+ ?x1827 ?x1173 (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0!14)))) 0)))
blanchet@57170
  2389
(let (($x5552 (or (not (or $x4783 $x4891)) $x1828)))
blanchet@57170
  2390
(let (($x4766 (or $x3683 $x5552)))
blanchet@57170
  2391
(let (($x4493 (<= (+ ?x1173 ?x1827 (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0!14)))) 0)))
blanchet@57170
  2392
(let (($x5019 (= (+ ?x1827 ?x1173 (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0!14)))) (+ ?x1173 ?x1827 (* (- 1) (b_G$ (pair$ v_b_v_G_1$ ?v0!14)))))))
blanchet@57170
  2393
(let ((@x5288 (trans (monotonicity (rewrite $x5019) (= $x4891 $x4493)) (rewrite (= $x4493 $x4887)) (= $x4891 $x4887))))
blanchet@57170
  2394
(let ((@x5082 (monotonicity (monotonicity @x5288 (= (or $x4783 $x4891) $x5110)) (= (not (or $x4783 $x4891)) $x5079))))
blanchet@57170
  2395
(let ((@x5868 (monotonicity (monotonicity @x5082 (= $x5552 (or $x5079 $x1828))) (= $x4766 (or $x3683 (or $x5079 $x1828))))))
blanchet@57170
  2396
(let ((@x5811 (trans @x5868 (rewrite (= (or $x3683 (or $x5079 $x1828)) $x4844)) (= $x4766 $x4844))))
blanchet@57170
  2397
(let ((@x6433 (unit-resolution (def-axiom (or $x5110 $x4812)) (unit-resolution (mp ((_ quant-inst ?v0!14) $x4766) @x5811 $x4844) @x5944 @x5065 $x5079) $x4812)))
blanchet@57170
  2398
(let ((?x6047 (pair$ v_b_v_G_1$ ?v0!14)))
blanchet@57170
  2399
(let ((?x6491 (b_G$ ?x6047)))
blanchet@57170
  2400
(let (($x5826 (>= ?x6491 0)))
blanchet@57170
  2401
(let ((@x6283 (unit-resolution ((_ th-lemma arith triangle-eq) (or (not (= ?x6491 0)) $x5826)) (hypothesis (not $x5826)) (not (= ?x6491 0)))))
blanchet@57170
  2402
(let (($x5742 (= v_b_v_G_1$ ?v0!14)))
blanchet@57170
  2403
(let (($x5751 (<= ?x6491 0)))
blanchet@57170
  2404
(let ((@x6302 (unit-resolution ((_ th-lemma arith farkas 1 1) (or $x5826 $x5751)) (hypothesis (not $x5826)) $x5751)))
blanchet@57170
  2405
(let (($x5738 (or $x5742 (not $x5751))))
blanchet@57170
  2406
(let (($x3480 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(!(let (($x84 (= ?v0 ?v1)))
blanchet@57170
  2407
(or $x84 (not (<= (b_G$ (pair$ ?v0 ?v1)) 0)))) :pattern ( (pair$ ?v0 ?v1) )))
blanchet@57170
  2408
))
blanchet@57170
  2409
(let (($x120 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let (($x84 (= ?v0 ?v1)))
blanchet@57170
  2410
(or $x84 (not (<= (b_G$ (pair$ ?v0 ?v1)) 0)))))
blanchet@57170
  2411
))
blanchet@57170
  2412
(let (($x84 (= ?1 ?0)))
blanchet@57170
  2413
(let (($x117 (or $x84 (not (<= (b_G$ (pair$ ?1 ?0)) 0)))))
blanchet@57170
  2414
(let (($x105 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x29 (pair$ ?v0 ?v1)))
blanchet@57170
  2415
(let ((?x85 (b_G$ ?x29)))
blanchet@57170
  2416
(let (($x102 (< 0 ?x85)))
blanchet@57170
  2417
(=> (not (= ?v0 ?v1)) $x102)))))
blanchet@57170
  2418
))
blanchet@57170
  2419
(let (($x110 (forall ((?v0 B_Vertex$) (?v1 B_Vertex$) )(let ((?x29 (pair$ ?v0 ?v1)))
blanchet@57170
  2420
(let ((?x85 (b_G$ ?x29)))
blanchet@57170
  2421
(let (($x102 (< 0 ?x85)))
blanchet@57170
  2422
(let (($x84 (= ?v0 ?v1)))
blanchet@57170
  2423
(or $x84 $x102))))))
blanchet@57170
  2424
))
blanchet@57170
  2425
(let ((?x29 (pair$ ?1 ?0)))
blanchet@57170
  2426
(let ((?x85 (b_G$ ?x29)))
blanchet@57170
  2427
(let (($x102 (< 0 ?x85)))
blanchet@57170
  2428
(let ((@x119 (monotonicity (rewrite (= $x102 (not (<= ?x85 0)))) (= (or $x84 $x102) $x117))))
blanchet@57170
  2429
(let ((@x112 (quant-intro (rewrite (= (=> (not $x84) $x102) (or $x84 $x102))) (= $x105 $x110))))
blanchet@57170
  2430
(let ((@x125 (mp (asserted $x105) (trans @x112 (quant-intro @x119 (= $x110 $x120)) (= $x105 $x120)) $x120)))
blanchet@57170
  2431
(let ((@x3485 (mp (mp~ @x125 (nnf-pos (refl (~ $x117 $x117)) (~ $x120 $x120)) $x120) (quant-intro (refl (= $x117 $x117)) (= $x120 $x3480)) $x3480)))
blanchet@57170
  2432
(let ((@x5780 (mp ((_ quant-inst v_b_v_G_1$ ?v0!14) (or (not $x3480) $x5738)) (rewrite (= (or (not $x3480) $x5738) (or (not $x3480) $x5742 (not $x5751)))) (or (not $x3480) $x5742 (not $x5751)))))