1 2(SDEFUN |VECREC2;modInverse| ((|c| |Integer|) (|p| |Integer|) ($ |Integer|)) 3 (SPROG ((#1=#:G415 NIL)) 4 (QCAR 5 (PROG2 (LETT #1# (SPADCALL |c| |p| 1 (QREFELT $ 10))) 6 (QCDR #1#) 7 (|check_union2| (QEQCAR #1# 0) 8 (|Record| (|:| |coef1| (|Integer|)) 9 (|:| |coef2| (|Integer|))) 10 (|Union| 11 (|Record| (|:| |coef1| (|Integer|)) 12 (|:| |coef2| (|Integer|))) 13 "failed") 14 #1#))))) 15 16(SDEFUN |VECREC2;empty;I$;2| ((|nint| |Integer|) ($ $)) 17 (SPROG ((|intvec| (|PrimitiveArray| (|Integer|))) (#1=#:G419 NIL)) 18 (SEQ 19 (LETT |intvec| 20 (MAKEARR1 21 (PROG1 (LETT #1# |nint|) 22 (|check_subtype2| (>= #1# 0) '(|NonNegativeInteger|) 23 '(|Integer|) #1#)) 24 0)) 25 (EXIT 26 (VECTOR 1 0 0 |nint| |intvec| (MAKE-ARRAY 0) 1 0 0 27 (MAKE-ARRAY 0) (MAKE-ARRAY 0)))))) 28 29(SDEFUN |VECREC2;chinese_update;UvI$V;3| 30 ((|vec| |U32Vector|) (|p| |Integer|) (|statearg| $) ($ |Void|)) 31 (SPROG 32 ((|nmp| #1=(|Integer|)) (|cor| #2=(|Integer|)) (|ii| (|Integer|)) 33 (#3=#:G440 NIL) (|i| NIL) (|mpfact| #1#) (|nbmp| #1#) 34 (|mpcor| (|Integer|)) (|mpval| #2#) (|bmp| (|Integer|)) 35 (|bintvec| (|PrimitiveArray| (|Integer|))) (#4=#:G439 NIL) 36 (#5=#:G425 NIL) (#6=#:G438 NIL) 37 (|intvec| (|PrimitiveArray| (|Integer|))) (|mp| (|Integer|)) 38 (|state| (|Rep|))) 39 (SEQ (LETT |state| |statearg|) (LETT |mp| (QVELT |state| 0)) 40 (LETT |mpval| (SPADCALL |mp| |p| (QREFELT $ 12))) 41 (EXIT 42 (COND ((EQL |mpval| 0) (|error| "Duplicate modulus in update")) 43 (#7='T 44 (SEQ (LETT |mpcor| (|VECREC2;modInverse| |mpval| |p| $)) 45 (LETT |mpfact| (* |mpcor| |mp|)) 46 (LETT |nmp| (* |mp| |p|)) 47 (LETT |mpfact| 48 (SPADCALL |mpfact| |nmp| (QREFELT $ 12))) 49 (QSETVELT |state| 2 (+ (QVELT |state| 2) 1)) 50 (LETT |intvec| (QVELT |state| 4)) 51 (SEQ (LETT |i| 0) (LETT #6# (- (QVELT |state| 3) 1)) 52 G190 (COND ((|greater_SI| |i| #6#) (GO G191))) 53 (SEQ (LETT |ii| (QAREF1 |intvec| |i|)) 54 (LETT |cor| 55 (SPADCALL 56 (- (ELT_U32 |vec| |i|) |ii|) |p| 57 (QREFELT $ 12))) 58 (EXIT 59 (QSETAREF1 |intvec| |i| 60 (SPADCALL 61 (+ |ii| (* |mpfact| |cor|)) 62 |nmp| (QREFELT $ 12))))) 63 (LETT |i| (|inc_SI| |i|)) (GO G190) G191 64 (EXIT NIL)) 65 (COND 66 ((>= (QVELT |state| 2) 200) 67 (COND 68 ((EQL 69 (SPADCALL (QVELT |state| 2) 100 (QREFELT $ 12)) 70 0) 71 (SEQ (QSETVELT |state| 7 (QVELT |state| 2)) 72 (EXIT 73 (COND 74 ((SPADCALL (QVELT |state| 5) 75 (QREFELT $ 15)) 76 (SEQ 77 (QSETVELT |state| 5 78 (MAKEARR1 79 (PROG1 80 (LETT #5# 81 (QVELT |state| 3)) 82 (|check_subtype2| 83 (>= #5# 0) 84 '(|NonNegativeInteger|) 85 '(|Integer|) #5#)) 86 0)) 87 (LETT |bintvec| (QVELT |state| 5)) 88 (SEQ (LETT |i| 0) 89 (LETT #4# (- (QVELT |state| 3) 1)) 90 G190 91 (COND 92 ((|greater_SI| |i| #4#) 93 (GO G191))) 94 (SEQ 95 (QSETAREF1 |bintvec| |i| 96 (QAREF1 |intvec| |i|)) 97 (EXIT 98 (QSETAREF1 |intvec| |i| 0))) 99 (LETT |i| (|inc_SI| |i|)) 100 (GO G190) G191 (EXIT NIL)) 101 (QSETVELT |state| 6 |nmp|) 102 (EXIT (LETT |nmp| 1)))) 103 (#7# 104 (SEQ (LETT |bintvec| (QVELT |state| 5)) 105 (LETT |bmp| (QVELT |state| 6)) 106 (LETT |mpval| 107 (SPADCALL |bmp| |nmp| 108 (QREFELT $ 12))) 109 (LETT |mpcor| 110 (|VECREC2;modInverse| |mpval| 111 |nmp| $)) 112 (LETT |mpfact| (* |mpcor| |bmp|)) 113 (LETT |nbmp| (* |bmp| |nmp|)) 114 (LETT |mpfact| 115 (SPADCALL |mpfact| |nbmp| 116 (QREFELT $ 12))) 117 (SEQ (LETT |i| 0) 118 (LETT #3# 119 (- (QVELT |state| 3) 1)) 120 G190 121 (COND 122 ((|greater_SI| |i| #3#) 123 (GO G191))) 124 (SEQ 125 (LETT |ii| 126 (QAREF1 |bintvec| |i|)) 127 (LETT |cor| 128 (SPADCALL 129 (- 130 (QAREF1 |intvec| |i|) 131 |ii|) 132 |nmp| (QREFELT $ 12))) 133 (QSETAREF1 |bintvec| |i| 134 (SPADCALL 135 (+ |ii| 136 (* |mpfact| 137 |cor|)) 138 |nbmp| 139 (QREFELT $ 12))) 140 (EXIT 141 (QSETAREF1 |intvec| |i| 0))) 142 (LETT |i| (|inc_SI| |i|)) 143 (GO G190) G191 (EXIT NIL)) 144 (QSETVELT |state| 6 |nbmp|) 145 (EXIT (LETT |nmp| 1))))))))))) 146 (EXIT (QSETVELT |state| 0 |nmp|))))))))) 147 148(SDEFUN |VECREC2;hensel_update;UvI$V;4| 149 ((|vec| |U32Vector|) (|p| |Integer|) (|statearg| $) ($ |Void|)) 150 (SPROG 151 ((#1=#:G445 NIL) (|i| NIL) (|intvec| (|PrimitiveArray| (|Integer|))) 152 (|mp| (|Integer|)) (|state| (|Rep|))) 153 (SEQ (LETT |state| |statearg|) (LETT |mp| (QVELT |state| 0)) 154 (LETT |intvec| (QVELT |state| 4)) 155 (SEQ (LETT |i| 0) (LETT #1# (- (QVELT |state| 3) 1)) G190 156 (COND ((|greater_SI| |i| #1#) (GO G191))) 157 (SEQ 158 (EXIT 159 (QSETAREF1 |intvec| |i| 160 (+ (QAREF1 |intvec| |i|) 161 (* (ELT_U32 |vec| |i|) |mp|))))) 162 (LETT |i| (|inc_SI| |i|)) (GO G190) G191 (EXIT NIL)) 163 (EXIT (QSETVELT |state| 0 (* |p| |mp|)))))) 164 165(SDEFUN |VECREC2;rational_reconstruction;4IU;5| 166 ((|x| |Integer|) (|y| |Integer|) (|i| |Integer|) (|j| |Integer|) 167 ($ |Union| (|Record| (|:| |num| (|Integer|)) (|:| |den| (|Integer|))) 168 "failed")) 169 (SPROG 170 ((|r1| (|Integer|)) (|s1| (|Integer|)) (|s0| (|Integer|)) 171 (|tmp| (|Integer|)) (|r0| (|Integer|)) 172 (|qr| 173 (|Record| (|:| |quotient| (|Integer|)) 174 (|:| |remainder| (|Integer|))))) 175 (SEQ (LETT |r0| |y|) (LETT |s0| 0) 176 (LETT |r1| (SPADCALL |x| |y| (QREFELT $ 12))) (LETT |s1| 1) 177 (SEQ G190 (COND ((NULL (> |r1| |i|)) (GO G191))) 178 (SEQ (LETT |qr| (DIVIDE2 |r0| |r1|)) (LETT |r0| |r1|) 179 (LETT |r1| (QCDR |qr|)) 180 (LETT |tmp| (- |s0| (* (QCAR |qr|) |s1|))) 181 (LETT |s0| |s1|) (EXIT (LETT |s1| |tmp|))) 182 NIL (GO G190) G191 (EXIT NIL)) 183 (COND 184 ((< |s1| 0) 185 (SEQ (LETT |s1| (- |s1|)) (EXIT (LETT |r1| (- |r1|)))))) 186 (EXIT 187 (COND 188 ((OR (> |s1| |j|) (SPADCALL (GCD |s1| |y|) 1 (QREFELT $ 20))) 189 (CONS 1 "failed")) 190 ('T (CONS 0 (CONS |r1| |s1|)))))))) 191 192(SDEFUN |VECREC2;rational_reconstruction2| 193 ((|statearg| $) (|block_offsets| |Vector| (|Integer|)) 194 ($ |Union| 195 (|Record| (|:| |numers| (|PrimitiveArray| (|Integer|))) 196 (|:| |denoms| (|PrimitiveArray| (|Integer|)))) 197 "failed")) 198 (SPROG 199 ((#1=#:G500 NIL) (|cden| #2=(|Integer|)) 200 (|ppr| (|Record| (|:| |num| (|Integer|)) (|:| |den| (|Integer|)))) 201 (|pp| 202 (|Union| (|Record| (|:| |num| (|Integer|)) (|:| |den| #2#)) 203 "failed")) 204 (|r1| (|Integer|)) (|co| (|Integer|)) (|cb| (|Integer|)) 205 (|j| #3=(|Integer|)) (#4=#:G499 NIL) (|ctmp| (|Integer|)) 206 (#5=#:G501 NIL) (|jj| NIL) (|dens| (|PrimitiveArray| (|Integer|))) 207 (|nums| (|PrimitiveArray| (|Integer|))) (#6=#:G479 NIL) 208 (#7=#:G477 NIL) (|mm| (|NonNegativeInteger|)) (|n| (|Integer|)) 209 (|ok| (|Boolean|)) (|bound2| (|Integer|)) (|bound| (|Integer|)) 210 (|j0| #3#) (|intvec| (|PrimitiveArray| (|Integer|))) 211 (|modulus| (|Integer|)) (|state| (|Rep|))) 212 (SEQ 213 (EXIT 214 (SEQ (LETT |state| |statearg|) (LETT |modulus| (QVELT |state| 0)) 215 (LETT |intvec| (QVELT |state| 4)) 216 (COND 217 ((>= (QVELT |state| 2) 200) 218 (SEQ 219 (COND 220 ((< (- (QVELT |state| 2) (QVELT |state| 8)) 150) 221 (COND 222 ((SPADCALL (QVELT |state| 0) 1 (QREFELT $ 20)) 223 (EXIT 224 (COND 225 ((EQL (SPADCALL (QVELT |state| 2) 100 (QREFELT $ 12)) 226 0) 227 (|error| "impossible")) 228 (#8='T 229 (PROGN 230 (LETT #1# (CONS 1 "failed")) 231 (GO #9=#:G498))))))))) 232 (QSETVELT |state| 8 (QVELT |state| 7)) 233 (LETT |modulus| (QVELT |state| 6)) 234 (EXIT (LETT |intvec| (QVELT |state| 5)))))) 235 (LETT |j0| (QVELT |state| 1)) 236 (LETT |bound| 237 (QUOTIENT2 (SPADCALL |modulus| (QREFELT $ 25)) 10)) 238 (LETT |bound2| (- |modulus| |bound|)) (LETT |ok| 'T) 239 (LETT |pp| 240 (SPADCALL (QAREF1 |intvec| |j0|) |modulus| |bound| 241 |bound| (QREFELT $ 23))) 242 (EXIT 243 (COND ((QEQCAR |pp| 1) (CONS 1 "failed")) 244 (#8# 245 (SEQ (LETT |n| (QVELT |state| 3)) 246 (LETT |mm| (QVSIZE |block_offsets|)) 247 (COND 248 ((SPADCALL (QVELT |state| 9) (QREFELT $ 15)) 249 (SEQ 250 (QSETVELT |state| 9 251 (MAKEARR1 252 (PROG1 (LETT #7# |n|) 253 (|check_subtype2| (>= #7# 0) 254 '(|NonNegativeInteger|) 255 '(|Integer|) 256 #7#)) 257 0)) 258 (EXIT 259 (QSETVELT |state| 10 260 (MAKEARR1 261 (PROG1 (LETT #6# |n|) 262 (|check_subtype2| (>= #6# 0) 263 '(|NonNegativeInteger|) 264 '(|Integer|) 265 #6#)) 266 0)))))) 267 (LETT |nums| (QVELT |state| 9)) 268 (LETT |dens| (QVELT |state| 10)) 269 (LETT |ppr| (QCDR |pp|)) 270 (QSETAREF1 |nums| |j0| (QCAR |ppr|)) 271 (QSETAREF1 |dens| |j0| (QCDR |ppr|)) 272 (LETT |cden| (QCDR |ppr|)) (LETT |co| 0) 273 (LETT |cb| 1) 274 (SEQ 275 (EXIT 276 (SEQ (LETT |jj| 1) (LETT #5# |mm|) G190 277 (COND ((|greater_SI| |jj| #5#) (GO G191))) 278 (SEQ 279 (LETT |ctmp| 280 (SPADCALL |block_offsets| |jj| 281 (QREFELT $ 27))) 282 (EXIT 283 (COND 284 ((> |ctmp| |j0|) 285 (SEQ (LETT |cb| |jj|) 286 (LETT |co| |ctmp|) 287 (EXIT 288 (PROGN 289 (LETT #4# |$NoValue|) 290 (GO #10=#:G484)))))))) 291 (LETT |jj| (|inc_SI| |jj|)) (GO G190) G191 292 (EXIT NIL))) 293 #10# (EXIT #4#)) 294 (LETT |j| |j0|) 295 (EXIT 296 (SEQ G190 NIL 297 (SEQ (LETT |j| (+ |j| 1)) 298 (COND 299 ((>= |j| |n|) (LETT |j| (- |j| |n|)))) 300 (COND 301 ((EQL |j| |co|) 302 (COND 303 ((> |mm| 1) 304 (SEQ (LETT |cden| 1) 305 (LETT |cb| 306 (COND 307 ((EQL |cb| |mm|) 1) 308 ('T (+ |cb| 1)))) 309 (EXIT 310 (LETT |co| 311 (SPADCALL 312 |block_offsets| |cb| 313 (QREFELT $ 27))))))))) 314 (EXIT 315 (COND 316 ((EQL |j| |j0|) 317 (PROGN 318 (LETT #1# 319 (CONS 0 320 (CONS |nums| |dens|))) 321 (GO #9#))) 322 ('T 323 (SEQ 324 (LETT |r1| 325 (SPADCALL 326 (* |cden| 327 (QAREF1 |intvec| |j|)) 328 |modulus| (QREFELT $ 12))) 329 (EXIT 330 (COND 331 ((< |r1| |bound|) 332 (SEQ (QSETAREF1 |nums| |j| |r1|) 333 (EXIT 334 (QSETAREF1 |dens| |j| 335 |cden|)))) 336 ((> |r1| |bound2|) 337 (SEQ 338 (QSETAREF1 |nums| |j| 339 (- |r1| |modulus|)) 340 (EXIT 341 (QSETAREF1 |dens| |j| 342 |cden|)))) 343 ('T 344 (SEQ 345 (LETT |pp| 346 (SPADCALL |r1| |modulus| 347 |bound| |bound| 348 (QREFELT $ 349 23))) 350 (EXIT 351 (COND 352 ((QEQCAR |pp| 1) 353 (SEQ 354 (QSETVELT |state| 1 |j|) 355 (EXIT 356 (PROGN 357 (LETT #1# 358 (CONS 1 "failed")) 359 (GO #9#))))) 360 ('T 361 (SEQ 362 (LETT |ppr| (QCDR |pp|)) 363 (LETT |cden| 364 (* |cden| 365 (QCDR |ppr|))) 366 (EXIT 367 (COND 368 ((> |cden| |bound|) 369 (SEQ 370 (QSETVELT |state| 1 371 |j|) 372 (EXIT 373 (PROGN 374 (LETT #1# 375 (CONS 1 376 "failed")) 377 (GO #9#))))) 378 ('T 379 (SEQ 380 (QSETAREF1 |nums| |j| 381 (QCAR 382 |ppr|)) 383 (EXIT 384 (QSETAREF1 |dens| |j| 385 |cden|))))))))))))))))))) 386 NIL (GO G190) G191 (EXIT NIL))))))))) 387 #9# (EXIT #1#)))) 388 389(SDEFUN |VECREC2;rational_reconstruction;$U;7| 390 ((|statearg| $) 391 ($ |Union| 392 (|Record| (|:| |numers| (|PrimitiveArray| (|Integer|))) 393 (|:| |denoms| (|PrimitiveArray| (|Integer|)))) 394 "failed")) 395 (|VECREC2;rational_reconstruction2| |statearg| (MAKEARR1 1 0) $)) 396 397(SDEFUN |VECREC2;lcm| 398 ((|nums| |PrimitiveArray| (|Integer|)) (|lo| |Integer|) 399 (|hi| |Integer|) ($ |Integer|)) 400 (SPROG ((|res| (|Integer|)) (#1=#:G510 NIL) (|i| NIL)) 401 (SEQ (LETT |res| (QAREF1 |nums| |lo|)) 402 (SEQ (LETT |i| (+ |lo| 1)) (LETT #1# |hi|) G190 403 (COND ((> |i| #1#) (GO G191))) 404 (SEQ 405 (EXIT 406 (LETT |res| 407 (SPADCALL |res| (QAREF1 |nums| |i|) 408 (QREFELT $ 31))))) 409 (LETT |i| (+ |i| 1)) (GO G190) G191 (EXIT NIL)) 410 (EXIT |res|)))) 411 412(SDEFUN |VECREC2;gcd| 413 ((|nums| |PrimitiveArray| (|Integer|)) (|lo| |Integer|) 414 (|hi| |Integer|) ($ |Integer|)) 415 (SPROG ((|res| (|Integer|)) (#1=#:G514 NIL) (|i| NIL)) 416 (SEQ (LETT |res| (QAREF1 |nums| |lo|)) 417 (SEQ (LETT |i| (+ |lo| 1)) (LETT #1# |hi|) G190 418 (COND ((> |i| #1#) (GO G191))) 419 (SEQ 420 (EXIT (LETT |res| (GCD |res| (QAREF1 |nums| |i|))))) 421 (LETT |i| (+ |i| 1)) (GO G190) G191 (EXIT NIL)) 422 (EXIT |res|)))) 423 424(SDEFUN |VECREC2;remove_denoms;V3Pa;10| 425 ((|block_offsets| |Vector| (|Integer|)) 426 (|nums| |PrimitiveArray| (|Integer|)) 427 (|dens| |PrimitiveArray| (|Integer|)) 428 ($ |PrimitiveArray| (|Integer|))) 429 (SPROG 430 ((#1=#:G517 NIL) (#2=#:G529 NIL) (|i| NIL) (|cfactor| (|Integer|)) 431 (|tmpp2| (|Integer|)) (#3=#:G528 NIL) (|cden| (|Integer|)) 432 (|hi| #4=(|Integer|)) (|li| #4#) (#5=#:G527 NIL) (|ib| NIL) 433 (|res| (|PrimitiveArray| (|Integer|))) (|np| (|NonNegativeInteger|)) 434 (|nb| (|NonNegativeInteger|))) 435 (SEQ (LETT |nb| (QVSIZE |block_offsets|)) (LETT |np| (QVSIZE |nums|)) 436 (LETT |res| (MAKEARR1 |np| 0)) 437 (SEQ (LETT |ib| 1) (LETT #5# |nb|) G190 438 (COND ((|greater_SI| |ib| #5#) (GO G191))) 439 (SEQ 440 (LETT |li| (SPADCALL |block_offsets| |ib| (QREFELT $ 27))) 441 (LETT |hi| 442 (COND ((EQL |ib| |nb|) |np|) 443 ('T 444 (SPADCALL |block_offsets| (+ |ib| 1) 445 (QREFELT $ 27))))) 446 (LETT |hi| (- |hi| 1)) 447 (LETT |cden| (|VECREC2;lcm| |dens| |li| |hi| $)) 448 (SEQ (LETT |i| |li|) (LETT #3# |hi|) G190 449 (COND ((> |i| #3#) (GO G191))) 450 (SEQ 451 (LETT |tmpp2| 452 (PROG2 453 (LETT #1# 454 (SPADCALL |cden| (QAREF1 |dens| |i|) 455 (QREFELT $ 33))) 456 (QCDR #1#) 457 (|check_union2| (QEQCAR #1# 0) (|Integer|) 458 (|Union| (|Integer|) 459 #6="failed") 460 #1#))) 461 (EXIT 462 (QSETAREF1 |res| |i| 463 (* (QAREF1 |nums| |i|) |tmpp2|)))) 464 (LETT |i| (+ |i| 1)) (GO G190) G191 (EXIT NIL)) 465 (LETT |cfactor| (|VECREC2;gcd| |res| |li| |hi| $)) 466 (EXIT 467 (COND 468 ((SPADCALL |cfactor| 1 (QREFELT $ 20)) 469 (COND 470 ((SPADCALL |cfactor| 0 (QREFELT $ 20)) 471 (SEQ (LETT |i| |li|) (LETT #2# |hi|) G190 472 (COND ((> |i| #2#) (GO G191))) 473 (SEQ 474 (EXIT 475 (QSETAREF1 |res| |i| 476 (PROG2 477 (LETT #1# 478 (SPADCALL 479 (QAREF1 |res| |i|) 480 |cfactor| 481 (QREFELT $ 33))) 482 (QCDR #1#) 483 (|check_union2| (QEQCAR #1# 0) 484 (|Integer|) 485 (|Union| 486 (|Integer|) #6#) 487 #1#))))) 488 (LETT |i| (+ |i| 1)) (GO G190) G191 489 (EXIT NIL)))))))) 490 (LETT |ib| (|inc_SI| |ib|)) (GO G190) G191 (EXIT NIL)) 491 (EXIT |res|)))) 492 493(SDEFUN |VECREC2;reconstruct;$VU;11| 494 ((|statearg| $) (|block_offsets| |Vector| (|Integer|)) 495 ($ |Union| (|PrimitiveArray| (|Integer|)) "failed")) 496 (SPROG 497 ((|ppr| 498 (|Record| (|:| |numers| (|PrimitiveArray| (|Integer|))) 499 (|:| |denoms| (|PrimitiveArray| (|Integer|))))) 500 (#1=#:G539 NIL) 501 (|pp| 502 (|Union| 503 (|Record| (|:| |numers| (|PrimitiveArray| (|Integer|))) 504 (|:| |denoms| (|PrimitiveArray| (|Integer|)))) 505 "failed"))) 506 (SEQ 507 (EXIT 508 (SEQ 509 (LETT |pp| 510 (|VECREC2;rational_reconstruction2| |statearg| 511 |block_offsets| $)) 512 (EXIT 513 (COND 514 ((QEQCAR |pp| 1) 515 (PROGN (LETT #1# (CONS 1 "failed")) (GO #2=#:G538))) 516 ('T 517 (SEQ (LETT |ppr| (QCDR |pp|)) 518 (EXIT 519 (CONS 0 520 (SPADCALL |block_offsets| (QCAR |ppr|) (QCDR |ppr|) 521 (QREFELT $ 34)))))))))) 522 #2# (EXIT #1#)))) 523 524(DECLAIM (NOTINLINE |VectorIntegerReconstructor;|)) 525 526(DEFUN |VectorIntegerReconstructor| () 527 (SPROG NIL 528 (PROG (#1=#:G541) 529 (RETURN 530 (COND 531 ((LETT #1# 532 (HGET |$ConstructorCache| '|VectorIntegerReconstructor|)) 533 (|CDRwithIncrement| (CDAR #1#))) 534 ('T 535 (UNWIND-PROTECT 536 (PROG1 537 (CDDAR 538 (HPUT |$ConstructorCache| '|VectorIntegerReconstructor| 539 (LIST 540 (CONS NIL 541 (CONS 1 542 (|VectorIntegerReconstructor;|)))))) 543 (LETT #1# T)) 544 (COND 545 ((NOT #1#) 546 (HREM |$ConstructorCache| 547 '|VectorIntegerReconstructor|)))))))))) 548 549(DEFUN |VectorIntegerReconstructor;| () 550 (SPROG ((|dv$| NIL) ($ NIL) (|pv$| NIL)) 551 (PROGN 552 (LETT |dv$| '(|VectorIntegerReconstructor|)) 553 (LETT $ (GETREFV 37)) 554 (QSETREFV $ 0 |dv$|) 555 (QSETREFV $ 3 (LETT |pv$| (|buildPredVector| 0 0 NIL))) 556 (|haddProp| |$ConstructorCache| '|VectorIntegerReconstructor| NIL 557 (CONS 1 $)) 558 (|stuffDomainSlots| $) 559 (SETF |pv$| (QREFELT $ 3)) 560 (QSETREFV $ 6 561 (|Record| (|:| |cmod| (|Integer|)) (|:| |curj| (|Integer|)) 562 (|:| |nmods| (|Integer|)) 563 (|:| |nints| (|Integer|)) 564 (|:| |ints| (|PrimitiveArray| (|Integer|))) 565 (|:| |bints| (|PrimitiveArray| (|Integer|))) 566 (|:| |bcmod| (|Integer|)) 567 (|:| |bnmods| (|Integer|)) 568 (|:| |nrecs| (|Integer|)) 569 (|:| |numers| (|PrimitiveArray| (|Integer|))) 570 (|:| |denoms| (|PrimitiveArray| (|Integer|))))) 571 $))) 572 573(MAKEPROP '|VectorIntegerReconstructor| '|infovec| 574 (LIST 575 '#(NIL NIL NIL NIL NIL NIL '|Rep| 576 (|Record| (|:| |coef1| $) (|:| |coef2| $)) (|Union| 7 '"failed") 577 (|Integer|) (0 . |extendedEuclidean|) |VECREC2;empty;I$;2| 578 (7 . |positiveRemainder|) (|Boolean|) (|PrimitiveArray| 9) 579 (13 . |empty?|) (|Void|) (|U32Vector|) 580 |VECREC2;chinese_update;UvI$V;3| |VECREC2;hensel_update;UvI$V;4| 581 (18 . ~=) (|Record| (|:| |num| 9) (|:| |den| 9)) 582 (|Union| 21 '"failed") |VECREC2;rational_reconstruction;4IU;5| 583 (|IntegerRoots| 9) (24 . |approxSqrt|) (|Vector| 9) (29 . |elt|) 584 (|Record| (|:| |numers| 14) (|:| |denoms| 14)) 585 (|Union| 28 '"failed") |VECREC2;rational_reconstruction;$U;7| 586 (35 . |lcm|) (|Union| $ '"failed") (41 . |exquo|) 587 |VECREC2;remove_denoms;V3Pa;10| (|Union| 14 '"failed") 588 |VECREC2;reconstruct;$VU;11|) 589 '#(|remove_denoms| 47 |reconstruct| 54 |rational_reconstruction| 60 590 |hensel_update| 73 |empty| 80 |chinese_update| 85) 591 'NIL 592 (CONS (|makeByteWordVec2| 1 '(0)) 593 (CONS '#(NIL) 594 (CONS 595 '#((|Join| 596 (|mkCategory| 597 (LIST '((|empty| ($$ (|Integer|))) T) 598 '((|chinese_update| 599 ((|Void|) (|U32Vector|) (|Integer|) $$)) 600 T) 601 '((|hensel_update| 602 ((|Void|) (|U32Vector|) (|Integer|) $$)) 603 T) 604 '((|rational_reconstruction| 605 ((|Union| 606 (|Record| (|:| |num| (|Integer|)) 607 (|:| |den| (|Integer|))) 608 "failed") 609 (|Integer|) (|Integer|) (|Integer|) 610 (|Integer|))) 611 T) 612 '((|rational_reconstruction| 613 ((|Union| 614 (|Record| 615 (|:| |numers| 616 (|PrimitiveArray| (|Integer|))) 617 (|:| |denoms| 618 (|PrimitiveArray| (|Integer|)))) 619 "failed") 620 $$)) 621 T) 622 '((|remove_denoms| 623 ((|PrimitiveArray| (|Integer|)) 624 (|Vector| (|Integer|)) 625 (|PrimitiveArray| (|Integer|)) 626 (|PrimitiveArray| (|Integer|)))) 627 T) 628 '((|reconstruct| 629 ((|Union| (|PrimitiveArray| (|Integer|)) 630 "failed") 631 $$ (|Vector| (|Integer|)))) 632 T)) 633 (LIST) NIL NIL))) 634 (|makeByteWordVec2| 36 635 '(3 9 8 0 0 0 10 2 9 0 0 0 12 1 14 636 13 0 15 2 9 13 0 0 20 1 24 9 9 25 637 2 26 9 0 9 27 2 9 0 0 0 31 2 9 32 638 0 0 33 3 0 14 26 14 14 34 2 0 35 639 0 26 36 1 0 29 0 30 4 0 22 9 9 9 640 9 23 3 0 16 17 9 0 19 1 0 0 9 11 641 3 0 16 17 9 0 18))))) 642 '|lookupComplete|)) 643 644(MAKEPROP '|VectorIntegerReconstructor| 'NILADIC T) 645