-
Notifications
You must be signed in to change notification settings - Fork 0
/
program
42 lines (42 loc) · 424 KB
/
program
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
./scheme/util.ss~:;;-adjust tree-apply-proc to not be dependent on * as a masking character
./scheme/util.ss~:;;-use data abstraction for location in tree-apply-proc
./scheme/util.ss~: (export all-equal? all-assoc curry all max-take sexp-replace sexp-search get/make-alist-entry rest pair random-from-range depth tree-apply-proc primitive?)
./scheme/util.ss~: (define (tree-apply-proc proc location tree)
./scheme/util.ss~: (pair (first tree) (map (curry tree-apply-proc proc) location-mask (rest tree))))])))
./scheme/abstract.ss: (define etree->id first)
./scheme/abstract.ss: (define etree->tree cdr) ;; non-recursive
./scheme/abstract.ss: (define etree->children cddr)
./scheme/abstract.ss: [(and ignore-id-matches (eqv? (etree->id et1) (etree->id et2))) #f]
./scheme/abstract.ss: (etree->tree et1)
./scheme/abstract.ss: (etree->tree et2))])
./scheme/abstract.ss: (define (get-valid-abstractions subtree-matches)
./scheme/abstract.ss: (let ([abstractions (map third subtree-matches)])
./scheme/abstract.ss: (define (get/make-valid-abstractions subtree-matches)
./scheme/abstract.ss: (let* ([abstractions (map third subtree-matches)]
./scheme/util.ss:;;-adjust tree-apply-proc to not be dependent on * as a masking character
./scheme/util.ss:;;-use data abstraction for location in tree-apply-proc
./scheme/util.ss: (export all-equal? all-assoc curry all max-take sexp-replace sexp-search get/make-alist-entry rest pair random-from-range depth tree-apply-proc primitive?)
./scheme/util.ss: (define (tree-apply-proc proc location tree)
./scheme/util.ss: (pair (first tree) (map (curry tree-apply-proc proc) location-mask (rest tree))))])))
./bher/program:./tests/test.church.ss:(define church-+ (lambda (address store . args) (apply + (map (lambda (a) (church-force address store a)) args))))(define church-list (lambda (address store . args) (apply list (map (lambda (a) (church-force address store a)) args))))(define church-<= (lambda (address store . args) (apply <= (map (lambda (a) (church-force address store a)) args))))(define church-- (lambda (address store . args) (apply - (map (lambda (a) (church-force address store a)) args))))(define church-equal? (lambda (address store . args) (apply equal? (map (lambda (a) (church-force address store a)) args))))(define church-< (lambda (address store . args) (apply < (map (lambda (a) (church-force address store a)) args))))(define church-/ (lambda (address store . args) (apply / (map (lambda (a) (church-force address store a)) args))))(define church-* (lambda (address store . args) (apply * (map (lambda (a) (church-force address store a)) args))))(define church-eq? (lambda (address store . args) (apply eq? (map (lambda (a) (church-force address store a)) args))))(define church-expt (lambda (address store . args) (apply expt (map (lambda (a) (church-force address store a)) args))))(define church-= (lambda (address store . args) (apply = (map (lambda (a) (church-force address store a)) args))))(define church-null? (lambda (address store . args) (apply null? (map (lambda (a) (church-force address store a)) args))))(define church-list-ref (lambda (address store . args) (apply list-ref (map (lambda (a) (church-force address store a)) args))))(define church-length (lambda (address store . args) (apply length (map (lambda (a) (church-force address store a)) args))))(define church->= (lambda (address store . args) (apply >= (map (lambda (a) (church-force address store a)) args))))(define church-append (lambda (address store . args) (apply append (map (lambda (a) (church-force address store a)) args))))(define church-lev-dist (lambda (address store . args) (apply lev-dist (map (lambda (a) (church-force address store a)) args))))(define church-list? (lambda (address store . args) (apply list? (map (lambda (a) (church-force address store a)) args))))(define church-display (lambda (address store . args) (apply display (map (lambda (a) (church-force address store a)) args))))(define church-second (lambda (address store . args) (apply second (map (lambda (a) (church-force address store a)) args))))(define church-random-real (lambda (address store . args) (apply random-real (map (lambda (a) (church-force address store a)) args))))(define church-car (lambda (address store . args) (apply car (map (lambda (a) (church-force address store a)) args))))(define church-log (lambda (address store . args) (apply log (map (lambda (a) (church-force address store a)) args))))(define church-exp (lambda (address store . args) (apply exp (map (lambda (a) (church-force address store a)) args))))(define church-sample-dirichlet (lambda (address store . args) (apply sample-dirichlet (map (lambda (a) (church-force address store a)) args))))(define church-dirichlet-lnpdf (lambda (address store . args) (apply dirichlet-lnpdf (map (lambda (a) (church-force address store a)) args))))(define church-discrete-sampler (lambda (address store . args) (apply discrete-sampler (map (lambda (a) (church-force address store a)) args))))(define church-> (lambda (address store . args) (apply > (map (lambda (a) (church-force address store a)) args))))(define church-discrete-pdf (lambda (address store . args) (apply discrete-pdf (map (lambda (a) (church-force address store a)) args))))(define church-iota (lambda (address store . args) (apply iota (map (lambda (a) (church-force address store a)) args))))(define church-random-integer (lambda (address store . args) (apply random-integer (map (lambda (a) (church-force address store a)) args))))(define church-integer? (lambda (address store . args) (apply integer? (map (lambda (a) (church-force address store a)) args))))(define church-sample-gaussian (lambda (address store . args) (apply sample-gaussian (map (lambda (a) (church-force address store a)) args))))(define church-gaussian-lnpdf (lambda (address store . args) (apply gaussian-lnpdf (map (lambda (a) (church-force address store a)) args))))(define church-scheme-gensym (lambda (address store . args) (apply scheme-gensym (map (lambda (a) (church-force address store a)) args))))(define church-lnfact (lambda (address store . args) (apply lnfact (map (lambda (a) (church-force address store a)) args))))(define church-take (lambda (address store . args) (apply take (map (lambda (a) (church-force address store a)) args))))(define church-drop (lambda (address store . args) (apply drop (map (lambda (a) (church-force address store a)) args))))(define church-make-list (lambda (address store . args) (apply make-list (map (lambda (a) (church-force address store a)) args))))(define church-error (lambda (address store . args) (apply error (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->with-proposer-calls (lambda (address store . args) (apply mcmc-state->with-proposer-calls (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->xrp-draws (lambda (address store . args) (apply mcmc-state->xrp-draws (map (lambda (a) (church-force address store a)) args))))(define church-addbox-empty? (lambda (address store . args) (apply addbox-empty? (map (lambda (a) (church-force address store a)) args))))(define church-addbox->alist (lambda (address store . args) (apply addbox->alist (map (lambda (a) (church-force address store a)) args))))(define church-counterfactual-update (lambda (address store . args) (apply counterfactual-update (map (lambda (a) (church-force address store a)) args))))(define church-reset-with-proposer-calls (lambda (address store . args) (apply reset-with-proposer-calls (map (lambda (a) (church-force address store a)) args))))(define church-third (lambda (address store . args) (apply third (map (lambda (a) (church-force address store a)) args))))(define church-with-proposer-call-proposer (lambda (address store . args) (apply with-proposer-call-proposer (map (lambda (a) (church-force address store a)) args))))(define church-lazy-list->all-list (lambda (address store . args) (apply lazy-list->all-list (map (lambda (a) (church-force address store a)) args))))(define church-with-proposer-call-value (lambda (address store . args) (apply with-proposer-call-value (map (lambda (a) (church-force address store a)) args))))(define church-with-proposer-call-address (lambda (address store . args) (apply with-proposer-call-address (map (lambda (a) (church-force address store a)) args))))(define church-compute-depth (lambda (address store . args) (apply compute-depth (map (lambda (a) (church-force address store a)) args))))(define church-with-proposer-call-proc (lambda (address store . args) (apply with-proposer-call-proc (map (lambda (a) (church-force address store a)) args))))(define church-list->lazy-list (lambda (address store . args) (apply list->lazy-list (map (lambda (a) (church-force address store a)) args))))(define church-lazy-equal? (lambda (address store . args) (apply lazy-equal? (map (lambda (a) (church-force address store a)) args))))(define church-lazy-list->list (lambda (address store . args) (apply lazy-list->list (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-ticks (lambda (address store . args) (apply xrp-draw-ticks (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-value (lambda (address store . args) (apply xrp-draw-value (map (lambda (a) (church-force address store a)) args))))(define church-make-xrp-draw (lambda (address store . args) (apply make-xrp-draw (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-name (lambda (address store . args) (apply xrp-draw-name (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-proposer (lambda (address store . args) (apply xrp-draw-proposer (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-score (lambda (address store . args) (apply xrp-draw-score (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-support (lambda (address store . args) (apply xrp-draw-support (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-address (lambda (address store . args) (apply xrp-draw-address (map (lambda (a) (church-force address store a)) args))))(define church-drop-right (lambda (address store . args) (apply drop-right (map (lambda (a) (church-force address store a)) args))))(define church-addbox-size (lambda (address store . args) (apply addbox-size (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->score (lambda (address store . args) (apply mcmc-state->score (map (lambda (a) (church-force address store a)) args))))(define church-make-mcmc-state (lambda (address store . args) (apply make-mcmc-state (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->store (lambda (address store . args) (apply mcmc-state->store (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->address (lambda (address store . args) (apply mcmc-state->address (map (lambda (a) (church-force address store a)) args))))(define church-add-into-addbox (lambda (address store . args) (apply add-into-addbox (map (lambda (a) (church-force address store a)) args))))(define church-make-addbox (lambda (address store . args) (apply make-addbox (map (lambda (a) (church-force address store a)) args))))(define church-make-with-proposer-call (lambda (address store . args) (apply make-with-proposer-call (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->query-value (lambda (address store . args) (apply mcmc-state->query-value (map (lambda (a) (church-force address store a)) args))))(define church-min (lambda (address store . args) (apply min (map (lambda (a) (church-force address store a)) args))))(define church-current-date (lambda (address store . args) (apply current-date (map (lambda (a) (church-force address store a)) args))))(define church-pretty-print (lambda (address store . args) (apply pretty-print (map (lambda (a) (church-force address store a)) args))))(define church-nan? (lambda (address store . args) (apply nan? (map (lambda (a) (church-force address store a)) args))))(define church-member (lambda (address store . args) (apply member (map (lambda (a) (church-force address store a)) args))))(define church-lazy-list-size (lambda (address store . args) (apply lazy-list-size (map (lambda (a) (church-force address store a)) args))))(define church-exact->inexact (lambda (address store . args) (apply exact->inexact (map (lambda (a) (church-force address store a)) args))))(define church-max (lambda (address store . args) (apply max (map (lambda (a) (church-force address store a)) args))))(define church-lazy-pair (lambda (address store . args) (apply lazy-pair (map (lambda (a) (church-force address store a)) args))))(define church-symbol? (lambda (address store . args) (apply symbol? (map (lambda (a) (church-force address store a)) args))))(define church-time-second (lambda (address store . args) (apply time-second (map (lambda (a) (church-force address store a)) args))))(define church-time-difference (lambda (address store . args) (apply time-difference (map (lambda (a) (church-force address store a)) args))))(define church-current-time (lambda (address store . args) (apply current-time (map (lambda (a) (church-force address store a)) args))))(define church-not (lambda (address store . args) (apply not (map (lambda (a) (church-force address store a)) args))))(define church-abs (lambda (address store . args) (apply abs (map (lambda (a) (church-force address store a)) args))))(define church-pair? (lambda (address store . args) (apply pair? (map (lambda (a) (church-force address store a)) args))))(define church-size (lambda (address store . args) (apply size (map (lambda (a) (church-force address store a)) args))))(define church-tree->program (lambda (address store . args) (apply tree->program (map (lambda (a) (church-force address store a)) args))))(define church-unique-programs (lambda (address store . args) (apply unique-programs (map (lambda (a) (church-force address store a)) args))))(define church-compressions (lambda (address store . args) (apply compressions (map (lambda (a) (church-force address store a)) args))))(define church-max-take (lambda (address store . args) (apply max-take (map (lambda (a) (church-force address store a)) args))))(define church-program->sexpr (lambda (address store . args) (apply program->sexpr (map (lambda (a) (church-force address store a)) args))))(define (church-apply address store proc args) (apply (church-force address store proc) address store (church-force address store args)))(define (church-eval addr store sexpr) ((eval `(letrec ,(map (lambda (def) (if (symbol? (cadr def)) (list (cadr def) (caddr def)) `(,(car (cadr def)) (lambda ,(cdr (cadr def)) ,@(cddr def))))) (compile (list sexpr) '())) church-main) (environment '(rnrs) '(abstract) '(lazy) '(util) '(sym) '(rnrs mutable-pairs) '(_srfi :1) '(rename (church external math-env) (sample-discrete discrete-sampler)) '(rename (only (ikarus) gensym pretty-print exact->inexact) (gensym scheme-gensym)) '(_srfi :19) '(church compiler) '(rnrs eval))) addr store))(define (church-get-current-environment address store) (error 'gce "gce not implemented"))(define church-true #t)(define church-false #f)(define church-pair (lambda (address store #{g1 |gwkmXxkhP$9FRn!g|} #{g2 |FXlDAEv>DPSb!3&<|}) (cons (church-force address store #{g1 |gwkmXxkhP$9FRn!g|}) (church-force address store #{g2 |FXlDAEv>DPSb!3&<|}))))(define church-first (lambda (address store #{g3 |$lYWoSDF0PSpE?Od|}) (car (church-force address store #{g3 |$lYWoSDF0PSpE?Od|}))))(define church-rest (lambda (address store #{g4 |/HlUJ>4E=Dl4>u>F|}) (cdr (church-force address store #{g4 |/HlUJ>4E=Dl4>u>F|}))))(define (church-or address store . args) (fold (lambda (x y) (or x y)) #f args))(define (church-and address store . args) (fold (lambda (x y) (and x y)) #t args))(define (lev-dist) (error "lev-dist not implemented"))(define (church-force address store val) (if (and (pair? val) (eq? (car val) 'delayed)) (church-force address store ((cadr val) address store)) val))(define (make-store xrp-draws xrp-stats score tick enumeration-flag with-proposer-calls) (let () (list xrp-draws xrp-stats score tick enumeration-flag with-proposer-calls)))(define (make-empty-store) (make-store (make-addbox) (make-addbox) 0.0 0 #f (make-addbox)))(define store->xrp-draws first)(define store->xrp-stats second)(define store->score third)(define store->tick fourth)(define store->enumeration-flag fifth)(define store->with-proposer-calls sixth)(define (church-reset-store-xrp-draws address store) (return-with-store store (make-store (make-addbox) (store->xrp-stats store) (store->score store) (store->tick store) (store->enumeration-flag store) (store->with-proposer-calls store)) 'foo))(define (reset-with-proposer-calls state) (let* ((store (mcmc-state->store state))) (make-mcmc-state (make-store (store->xrp-draws store) (store->xrp-stats store) (store->score store) (store->tick store) (store->enumeration-flag store) (make-addbox)) (mcmc-state->value state) (mcmc-state->address state))))(define (return-with-store store new-store value) (begin (set-car! store (car new-store)) (set-cdr! store (cdr new-store)) value))(define alist-insert (lambda (addbox address info) (cons (cons address info) addbox)))(define alist-pop (lambda (addbox address) (if (null? addbox) (cons #f '()) (if (equal? address (caar addbox)) (cons (cdar addbox) (cdr addbox)) (let ((ret (alist-pop (cdr addbox) address))) (cons (car ret) (cons (car addbox) (cdr ret))))))))(define (make-empty-alist) '())(define alist-size length)(define alist-empty? null?)(define (add/replace-into-addbox addbox address new-entry) (let* ((present (pull-outof-addbox addbox address))) (if (equal? present '(#f)) (add-into-addbox addbox address new-entry) (add-into-addbox (rest present) address new-entry))))(define add-into-addbox alist-insert)(define pull-outof-addbox alist-pop)(define make-addbox make-empty-alist)(define addbox->alist (lambda (addbox) addbox))(define alist->addbox (lambda (alist) alist))(define addbox-size alist-size)(define addbox-empty? alist-empty?)(define (make-with-proposer-call address value proposer-thunk proc) (list address value proposer-thunk proc))(define with-proposer-call-address first)(define with-proposer-call-value second)(define with-proposer-call-proposer third)(define with-proposer-call-proc fourth)(define (church-with-proposer address store proc proposer) (lambda (call-address store) (let* ((with-proposer-calls (store->with-proposer-calls store)) (value (proc call-address store)) (new-call (make-with-proposer-call call-address value proposer proc)) (new-proposer-calls (add/replace-into-addbox with-proposer-calls call-address new-call)) (new-store (make-store (store->xrp-draws store) (store->xrp-stats store) (store->score store) (store->tick store) (store->enumeration-flag store) new-proposer-calls))) (return-with-store store new-store value))))(define (make-xrp-draw address value xrp-name proposer-thunk ticks score support) (list address value xrp-name proposer-thunk ticks score support))(define xrp-draw-address first)(define xrp-draw-value second)(define xrp-draw-name third)(define xrp-draw-proposer fourth)(define xrp-draw-ticks fifth)(define xrp-draw-score sixth)(define xrp-draw-support seventh)(define (church-make-xrp address store xrp-name sample incr-stats decr-stats score init-stats hyperparams proposer support) (let* ((xrp-name (church-force address store xrp-name)) (sample (church-force address store sample)) (incr-stats (church-force address store incr-stats)) (decr-stats (church-force address store decr-stats)) (score (church-force address store score)) (init-stats (church-force address store init-stats)) (hyperparams (church-force address store hyperparams)) (proposer (church-force address store proposer)) (support (church-force address store support))) (return-with-store store (let* ((ret (pull-outof-addbox (store->xrp-stats store) address)) (oldstats (car ret)) (reststatsbox (cdr ret)) (tick (store->tick store))) (if (and (not (eq? #f oldstats)) (= tick (second oldstats))) store (make-store (store->xrp-draws store) (add-into-addbox reststatsbox address (list init-stats tick)) (store->score store) tick (store->enumeration-flag store) (store->with-proposer-calls store)))) (let* ((xrp-address address) (proposer (if (null? proposer) (lambda (address store operands old-value) (let* ((dec (decr-stats address store old-value (caar (pull-outof-addbox (store->xrp-stats store) xrp-address)) hyperparams operands)) (decstats (second dec)) (decscore (third dec)) (inc (sample address store decstats hyperparams operands)) (proposal-value (first inc)) (incscore (third inc))) (list proposal-value incscore decscore))) proposer))) (lambda (address store . args) (let* ((tmp (pull-outof-addbox (store->xrp-draws store) address)) (old-xrp-draw (car tmp)) (rest-xrp-draws (cdr tmp)) (old-tick (if (eq? #f old-xrp-draw) '() (first (xrp-draw-ticks old-xrp-draw))))) (if (equal? (store->tick store) old-tick) (let () (return-with-store store store (xrp-draw-value old-xrp-draw))) (let* ((tmp (pull-outof-addbox (store->xrp-stats store) xrp-address)) (stats (caar tmp)) (rest-statsbox (cdr tmp)) (support-vals (if (null? support) '() (support address store stats hyperparams args))) (tmp (if (eq? #f old-xrp-draw) (if (store->enumeration-flag store) (incr-stats address (cons (first store) (cdr store)) (first support-vals) stats hyperparams args) (sample address (cons (first store) (cdr store)) stats hyperparams args)) (incr-stats address (cons (first store) (cdr store)) (xrp-draw-value old-xrp-draw) stats hyperparams args))) (value (first tmp)) (new-stats (list (second tmp) (store->tick store))) (incr-score (third tmp)) (new-xrp-draw (make-xrp-draw address value xrp-name (lambda (address store state) (let ((store (cons (first (mcmc-state->store state)) (cdr (mcmc-state->store state))))) (church-apply (mcmc-state->address state) store proposer (list args value)))) (cons (store->tick store) old-tick) incr-score support-vals)) (new-store (make-store (add-into-addbox rest-xrp-draws address new-xrp-draw) (add-into-addbox rest-statsbox xrp-address new-stats) (+ (store->score store) incr-score) (store->tick store) (store->enumeration-flag store) (store->with-proposer-calls store)))) (return-with-store store new-store value)))))))))(define (make-mcmc-state store value address) (list store value address))(define (add-proc-to-state state proc) (append state (list proc)))(define mcmc-state->store first)(define mcmc-state->value second)(define mcmc-state->address third)(define (mcmc-state->xrp-draws state) (store->xrp-draws (mcmc-state->store state)))(define (mcmc-state->with-proposer-calls state) (store->with-proposer-calls (mcmc-state->store state)))(define (mcmc-state->score state) (if (not (eq? #t (first (second state)))) -inf.0 (store->score (mcmc-state->store state))))(define (mcmc-state->query-value state) (let ((store (cons (first (mcmc-state->store state)) (cdr (mcmc-state->store state))))) (church-apply (mcmc-state->address state) store (cdr (second state)) '())))(define (church-make-initial-mcmc-state address store) (make-mcmc-state (make-store (make-addbox) (store->xrp-stats store) 0.0 0 (store->enumeration-flag store) (make-addbox)) 'init-val address))(define (church-make-addressed-initial-mcmc-state address store start-address) (make-mcmc-state (make-store (store->xrp-draws store) (store->xrp-stats store) 0.0 (store->tick store) (store->enumeration-flag store) (store->with-proposer-calls store)) 'init-val start-address))(define (church-make-initial-enumeration-state address store) (make-mcmc-state (make-store '() (store->xrp-stats store) (store->score store) (store->tick store) #t (make-addbox)) 'init-val address))(define (add-interventions interv xrps) (let* ((new-addbox (pull-outof-addbox xrps (xrp-draw-address (first interv)))) (new-addbox (if (eq? (first new-addbox) #f) xrps (cdr new-addbox)))) (add-into-addbox new-addbox (xrp-draw-address (first interv)) (make-xrp-draw (xrp-draw-address (first interv)) (cdr interv) (xrp-draw-name (first interv)) (xrp-draw-proposer (first interv)) (xrp-draw-ticks (first interv)) 'dummy-score (xrp-draw-support (first interv))))))(define (counterfactual-update state nfqp . interventions) (let* ((new-tick (+ 1 (store->tick (mcmc-state->store state)))) (interv-store (make-store (fold add-interventions (store->xrp-draws (mcmc-state->store state)) interventions) (store->xrp-stats (mcmc-state->store state)) 0.0 new-tick (store->enumeration-flag (mcmc-state->store state)) (store->with-proposer-calls (mcmc-state->store state)))) (ret (list (church-apply (mcmc-state->address state) interv-store nfqp '()) interv-store)) (value (first ret)) (new-store (second ret)) (ret2 (if (store->enumeration-flag new-store) (list new-store 0) (clean-store new-store))) (new-store (first ret2)) (cd-bw/fw (second ret2)) (proposal-state (make-mcmc-state new-store value (mcmc-state->address state)))) (list proposal-state cd-bw/fw)))(define (clean-store store) (let* ((state-tick (store->tick store)) (draws-bw/fw (let loop ((draws (addbox->alist (store->xrp-draws store))) (used-draws '()) (bw/fw 0.0)) (if (null? draws) (list used-draws bw/fw) (if (= (first (xrp-draw-ticks (cdar draws))) state-tick) (if (null? (cdr (xrp-draw-ticks (cdar draws)))) (loop (cdr draws) (cons (car draws) used-draws) (- bw/fw (xrp-draw-score (cdar draws)))) (loop (cdr draws) (cons (car draws) used-draws) bw/fw)) (loop (cdr draws) used-draws (+ bw/fw (xrp-draw-score (cdar draws))))))))) (list (make-store (alist->addbox (first draws-bw/fw)) (store->xrp-stats store) (store->score store) (store->tick store) (store->enumeration-flag store) (store->with-proposer-calls store)) (second draws-bw/fw))))(define (church-main address store) (letrec ((church-sample (lambda (address store church-thunk) ((church-force (cons 'a1 . (address)) store church-thunk) (cons 'a2 . (address)) store))) (church-uniform-draw (lambda (address store church-lst) (if (church-force (cons 'a3 . (address)) store ((church-force (cons 'a4 . (address)) store church-null?) (cons 'a5 . (address)) store church-lst)) '() ((church-force (cons 'a6 . (address)) store church-list-ref) (cons 'a7 . (address)) store church-lst ((church-force (cons 'a8 . (address)) store church-sample-integer) (cons 'a9 . (address)) store ((church-force (cons 'a10 . (address)) store church-length) (cons 'a11 . (address)) store church-lst)))))) (church-safe-uniform-draw (lambda (address store church-lst) (if (church-force (cons 'a12 . (address)) store ((church-force (cons 'a13 . (address)) store church-null?) (cons 'a14 . (address)) store church-lst)) '() ((church-force (cons 'a15 . (address)) store (lambda (address store church-n) (if (church-force (cons 'a16 . (address)) store ((church-force (cons 'a17 . (address)) store church-or) (cons 'a18 . (address)) store ((church-force (cons 'a19 . (address)) store church-<) (cons 'a20 . (address)) store church-n 0) ((church-force (cons 'a21 . (address)) store church->=) (cons 'a22 . (address)) store church-n ((church-force (cons 'a23 . (address)) store church-length) (cons 'a24 . (address)) store church-lst)))) ((church-force (cons 'a25 . (address)) store church-list-ref) (cons 'a26 . (address)) store church-lst 0) ((church-force (cons 'a27 . (address)) store church-list-ref) (cons 'a28 . (address)) store church-lst church-n)))) (cons 'a29 . (address)) store ((church-force (cons 'a30 . (address)) store church-sample-integer) (cons 'a31 . (address)) store ((church-force (cons 'a32 . (address)) store church-length) (cons 'a33 . (address)) store church-lst)))))) (church-all (lambda (address store church-lst) ((church-force (cons 'a34 . (address)) store church-apply) (cons 'a35 . (address)) store church-and church-lst))) (church-any (lambda (address store church-lst) ((church-force (cons 'a36 . (address)) store church-apply) (cons 'a37 . (address)) store church-or church-lst))) (church-product (lambda (address store church-lst) ((church-force (cons 'a38 . (address)) store church-apply) (cons 'a39 . (address)) store church-* church-lst))) (church-sum (lambda (address store church-lst) ((church-force (cons 'a40 . (address)) store church-apply) (cons 'a41 . (address)) store church-+ church-lst))) (church-repeat (lambda (address store church-N church-proc) (if (church-force (cons 'a42 . (address)) store ((church-force (cons 'a43 . (address)) store church-=) (cons 'a44 . (address)) store church-N 0)) '() ((church-force (cons 'a45 . (address)) store church-pair) (cons 'a46 . (address)) store ((church-force (cons 'a47 . (address)) store church-proc) (cons 'a48 . (address)) store) ((church-force (cons 'a49 . (address)) store church-repeat) (cons 'a50 . (address)) store ((church-force (cons 'a51 . (address)) store church--) (cons 'a52 . (address)) store church-N 1) church-proc))))) (church-for-each (lambda (address store church-proc church-lst) (if (church-force (cons 'a53 . (address)) store ((church-force (cons 'a54 . (address)) store church-null?) (cons 'a55 . (address)) store church-lst)) '() (begin (church-force (cons 'a56 . (address)) store ((church-force (cons 'a57 . (address)) store church-proc) (cons 'a58 . (address)) store ((church-force (cons 'a59 . (address)) store church-first) (cons 'a60 . (address)) store church-lst))) ((church-force (cons 'a61 . (address)) store church-for-each) (cons 'a62 . (address)) store church-proc ((church-force (cons 'a63 . (address)) store church-rest) (cons 'a64 . (address)) store church-lst)))))) (church-fold (lambda (address store church-proc church-init . church-lsts) (if (church-force (cons 'a65 . (address)) store ((church-force (cons 'a66 . (address)) store church-null?) (cons 'a67 . (address)) store ((church-force (cons 'a68 . (address)) store church-first) (cons 'a69 . (address)) store church-lsts))) church-init ((church-force (cons 'a70 . (address)) store church-apply) (cons 'a71 . (address)) store church-fold ((church-force (cons 'a72 . (address)) store church-pair) (cons 'a73 . (address)) store church-proc ((church-force (cons 'a74 . (address)) store church-pair) (cons 'a75 . (address)) store ((church-force (cons 'a76 . (address)) store church-apply) (cons 'a77 . (address)) store church-proc ((church-force (cons 'a78 . (address)) store church-append) (cons 'a79 . (address)) store ((church-force (cons 'a80 . (address)) store church-single-map) (cons 'a81 . (address)) store church-first church-lsts) ((church-force (cons 'a82 . (address)) store church-list) (cons 'a83 . (address)) store church-init))) ((church-force (cons 'a84 . (address)) store church-single-map) (cons 'a85 . (address)) store church-rest church-lsts))))))) (church-reverse (lambda (address store church-lst) ((church-force (cons 'a86 . (address)) store church-fold) (cons 'a87 . (address)) store church-pair '() church-lst))) (church-map (lambda (address store church-proc . church-lsts) (if (church-force (cons 'a88 . (address)) store ((church-force (cons 'a89 . (address)) store church-null?) (cons 'a90 . (address)) store ((church-force (cons 'a91 . (address)) store church-rest) (cons 'a92 . (address)) store church-lsts))) ((church-force (cons 'a93 . (address)) store church-single-map) (cons 'a94 . (address)) store church-proc ((church-force (cons 'a95 . (address)) store church-first) (cons 'a96 . (address)) store church-lsts)) ((church-force (cons 'a97 . (address)) store church-multi-map) (cons 'a98 . (address)) store church-proc church-lsts)))) (church-single-map (lambda (address store church-proc church-lst) (if (church-force (cons 'a99 . (address)) store ((church-force (cons 'a100 . (address)) store church-null?) (cons 'a101 . (address)) store church-lst)) '() ((church-force (cons 'a102 . (address)) store church-pair) (cons 'a103 . (address)) store ((church-force (cons 'a104 . (address)) store church-proc) (cons 'a105 . (address)) store ((church-force (cons 'a106 . (address)) store church-first) (cons 'a107 . (address)) store church-lst)) ((church-force (cons 'a108 . (address)) store church-map) (cons 'a109 . (address)) store church-proc ((church-force (cons 'a110 . (address)) store church-rest) (cons 'a111 . (address)) store church-lst)))))) (church-multi-map (lambda (address store church-proc church-lsts) (if (church-force (cons 'a112 . (address)) store ((church-force (cons 'a113 . (address)) store church-null?) (cons 'a114 . (address)) store ((church-force (cons 'a115 . (address)) store church-first) (cons 'a116 . (address)) store church-lsts))) '() ((church-force (cons 'a117 . (address)) store church-pair) (cons 'a118 . (address)) store ((church-force (cons 'a119 . (address)) store church-apply) (cons 'a120 . (address)) store church-proc ((church-force (cons 'a121 . (address)) store church-single-map) (cons 'a122 . (address)) store church-first church-lsts)) ((church-force (cons 'a123 . (address)) store church-multi-map) (cons 'a124 . (address)) store church-proc ((church-force (cons 'a125 . (address)) store church-single-map) (cons 'a126 . (address)) store church-rest church-lsts)))))) (church-many-map (lambda (address store church-proc . church-lsts) ((church-force (cons 'a127 . (address)) store church-multi-map) (cons 'a128 . (address)) store church-proc church-lsts))) (church-filter (lambda (address store church-pred church-lst) (if (church-force (cons 'a129 . (address)) store ((church-force (cons 'a130 . (address)) store church-null?) (cons 'a131 . (address)) store church-lst)) '() (if (church-force (cons 'a132 . (address)) store ((church-force (cons 'a133 . (address)) store church-pred) (cons 'a134 . (address)) store ((church-force (cons 'a135 . (address)) store church-first) (cons 'a136 . (address)) store church-lst))) ((church-force (cons 'a137 . (address)) store church-pair) (cons 'a138 . (address)) store ((church-force (cons 'a139 . (address)) store church-first) (cons 'a140 . (address)) store church-lst) ((church-force (cons 'a141 . (address)) store church-filter) (cons 'a142 . (address)) store church-pred ((church-force (cons 'a143 . (address)) store church-rest) (cons 'a144 . (address)) store church-lst))) ((church-force (cons 'a145 . (address)) store church-filter) (cons 'a146 . (address)) store church-pred ((church-force (cons 'a147 . (address)) store church-rest) (cons 'a148 . (address)) store church-lst)))))) (church-list-index (lambda (address store church-pred church-lst . church-i) (if (church-force (cons 'a149 . (address)) store ((church-force (cons 'a150 . (address)) store church-null?) (cons 'a151 . (address)) store church-lst)) church-false ((church-force (cons 'a152 . (address)) store (lambda (address store church-i) (if (church-force (cons 'a153 . (address)) store ((church-force (cons 'a154 . (address)) store church-pred) (cons 'a155 . (address)) store ((church-force (cons 'a156 . (address)) store church-first) (cons 'a157 . (address)) store church-lst))) church-i ((church-force (cons 'a158 . (address)) store church-list-index) (cons 'a159 . (address)) store church-pred ((church-force (cons 'a160 . (address)) store church-rest) (cons 'a161 . (address)) store church-lst) ((church-force (cons 'a162 . (address)) store church-+) (cons 'a163 . (address)) store church-i 1))))) (cons 'a164 . (address)) store (if (church-force (cons 'a165 . (address)) store ((church-force (cons 'a166 . (address)) store church-null?) (cons 'a167 . (address)) store church-i)) 0 ((church-force (cons 'a168 . (address)) store church-first) (cons 'a169 . (address)) store church-i)))))) (church-zip (lambda (address store . church-lists) ((church-force (cons 'a170 . (address)) store church-multi-map) (cons 'a171 . (address)) store church-list church-lists))) (church-rejection-query (lambda (address store church-nfqp) ((church-force (cons 'a172 . (address)) store (lambda (address store church-val) (if (church-force (cons 'a173 . (address)) store ((church-force (cons 'a174 . (address)) store church-first) (cons 'a175 . (address)) store church-val)) ((church-force (cons 'a176 . (address)) store ((church-force (cons 'a177 . (address)) store church-rest) (cons 'a178 . (address)) store church-val)) (cons 'a179 . (address)) store) ((church-force (cons 'a180 . (address)) store church-rejection-query) (cons 'a181 . (address)) store church-nfqp)))) (cons 'a182 . (address)) store ((church-force (cons 'a183 . (address)) store church-nfqp) (cons 'a184 . (address)) store)))) (church-discrete church-sample-discrete) (church-multinomial (lambda (address store church-vals church-probs) ((church-force (cons 'a185 . (address)) store church-list-ref) (cons 'a186 . (address)) store church-vals ((church-force (cons 'a187 . (address)) store church-discrete) (cons 'a188 . (address)) store church-probs)))) (church-beta (lambda (address store church-a church-b) ((church-force (cons 'a189 . (address)) store church-dirichlet) (cons 'a190 . (address)) store ((church-force (cons 'a191 . (address)) store church-list) (cons 'a192 . (address)) store church-a church-b)))) (church-make-GEM (lambda (address store church-alpha) ((church-force (cons 'a193 . (address)) store (lambda (address store church-sticks) (lambda (address store) ((church-force (cons 'a194 . (address)) store church-pick-a-stick) (cons 'a195 . (address)) store church-sticks 1)))) (cons 'a196 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a197 . (address)) store church-beta) (cons 'a198 . (address)) store 1.0 church-alpha)))))) (church-pick-a-stick (lambda (address store church-sticks church-J) (if (church-force (cons 'a199 . (address)) store ((church-force (cons 'a200 . (address)) store church-flip) (cons 'a201 . (address)) store ((church-force (cons 'a202 . (address)) store church-sticks) (cons 'a203 . (address)) store church-J))) church-J ((church-force (cons 'a204 . (address)) store church-pick-a-stick) (cons 'a205 . (address)) store church-sticks ((church-force (cons 'a206 . (address)) store church-+) (cons 'a207 . (address)) store church-J 1))))) (church-sticky-DPmem (lambda (address store church-alpha church-proc) ((church-force (cons 'a208 . (address)) store (lambda (address store church-augmented-proc church-crps) (lambda (address store . church-argsin) ((church-force (cons 'a209 . (address)) store church-augmented-proc) (cons 'a210 . (address)) store church-argsin ((church-force (cons 'a211 . (address)) store ((church-force (cons 'a212 . (address)) store church-crps) (cons 'a213 . (address)) store church-argsin)) (cons 'a214 . (address)) store))))) (cons 'a215 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args church-part) ((church-force (cons 'a216 . (address)) store church-apply) (cons 'a217 . (address)) store church-proc church-args))) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args) ((church-force (cons 'a218 . (address)) store church-make-GEM) (cons 'a219 . (address)) store church-alpha)))))) (church-make-PYP (lambda (address store church-a church-b) ((church-force (cons 'a220 . (address)) store (lambda (address store church-sticks) (lambda (address store) ((church-force (cons 'a221 . (address)) store church-pick-a-stick) (cons 'a222 . (address)) store church-sticks 1)))) (cons 'a223 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a224 . (address)) store church-beta) (cons 'a225 . (address)) store ((church-force (cons 'a226 . (address)) store church--) (cons 'a227 . (address)) store 1.0 church-a) ((church-force (cons 'a228 . (address)) store church-+) (cons 'a229 . (address)) store church-b ((church-force (cons 'a230 . (address)) store church-*) (cons 'a231 . (address)) store church-a church-x)))))))) (church-PYmem (lambda (address store church-a church-b church-proc) ((church-force (cons 'a232 . (address)) store (lambda (address store church-augmented-proc church-crps) (lambda (address store . church-argsin) ((church-force (cons 'a233 . (address)) store church-augmented-proc) (cons 'a234 . (address)) store church-argsin ((church-force (cons 'a235 . (address)) store ((church-force (cons 'a236 . (address)) store church-crps) (cons 'a237 . (address)) store church-argsin)) (cons 'a238 . (address)) store))))) (cons 'a239 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args church-part) ((church-force (cons 'a240 . (address)) store church-apply) (cons 'a241 . (address)) store church-proc church-args))) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args) ((church-force (cons 'a242 . (address)) store church-make-PYP) (cons 'a243 . (address)) store church-a church-b)))))) (church-noisy-lev-list-equal? (lambda (address store church-list1 church-list2 church-coupling) (if (church-force (cons 'a244 . (address)) store ((church-force (cons 'a245 . (address)) store church-=) (cons 'a246 . (address)) store 0.0 church-coupling)) ((church-force (cons 'a247 . (address)) store church-equal?) (cons 'a248 . (address)) store church-list1 church-list2) ((church-force (cons 'a249 . (address)) store church-flip) (cons 'a250 . (address)) store ((church-force (cons 'a251 . (address)) store church-expt) (cons 'a252 . (address)) store church-coupling ((church-force (cons 'a253 . (address)) store church-lev-dist) (cons 'a254 . (address)) store church-list1 church-list2)))))) (church-flatten (lambda (address store church-lst) (if (church-force (cons 'a255 . (address)) store ((church-force (cons 'a256 . (address)) store church-null?) (cons 'a257 . (address)) store church-lst)) '() (if (church-force (cons 'a258 . (address)) store ((church-force (cons 'a259 . (address)) store church-list?) (cons 'a260 . (address)) store ((church-force (cons 'a261 . (address)) store church-first) (cons 'a262 . (address)) store church-lst))) ((church-force (cons 'a263 . (address)) store church-append) (cons 'a264 . (address)) store ((church-force (cons 'a265 . (address)) store church-flatten) (cons 'a266 . (address)) store ((church-force (cons 'a267 . (address)) store church-first) (cons 'a268 . (address)) store church-lst)) ((church-force (cons 'a269 . (address)) store church-flatten) (cons 'a270 . (address)) store ((church-force (cons 'a271 . (address)) store church-rest) (cons 'a272 . (address)) store church-lst))) ((church-force (cons 'a273 . (address)) store church-pair) (cons 'a274 . (address)) store ((church-force (cons 'a275 . (address)) store church-first) (cons 'a276 . (address)) store church-lst) ((church-force (cons 'a277 . (address)) store church-flatten) (cons 'a278 . (address)) store ((church-force (cons 'a279 . (address)) store church-rest) (cons 'a280 . (address)) store church-lst))))))) (church-mean (lambda (address store church-lst) ((church-force (cons 'a281 . (address)) store church-/) (cons 'a282 . (address)) store ((church-force (cons 'a283 . (address)) store church-apply) (cons 'a284 . (address)) store church-+ church-lst) ((church-force (cons 'a285 . (address)) store church-length) (cons 'a286 . (address)) store church-lst)))) (church-variance (lambda (address store church-lst) ((church-force (cons 'a287 . (address)) store (lambda (address store church-mn) ((church-force (cons 'a288 . (address)) store church-mean) (cons 'a289 . (address)) store ((church-force (cons 'a290 . (address)) store church-map) (cons 'a291 . (address)) store (lambda (address store church-x) ((church-force (cons 'a292 . (address)) store church-expt) (cons 'a293 . (address)) store ((church-force (cons 'a294 . (address)) store church--) (cons 'a295 . (address)) store church-x church-mn) 2)) church-lst)))) (cons 'a296 . (address)) store ((church-force (cons 'a297 . (address)) store church-mean) (cons 'a298 . (address)) store church-lst)))) (church-no-proposals (lambda (address store church-x) (begin (church-force (cons 'a299 . (address)) store ((church-force (cons 'a300 . (address)) store church-display) (cons 'a301 . (address)) store "warning: no-proposals not implemented.\n")) church-x))) (church-range (lambda (address store church-a church-b) (if (church-force (cons 'a302 . (address)) store ((church-force (cons 'a303 . (address)) store church-=) (cons 'a304 . (address)) store church-a church-b)) ((church-force (cons 'a305 . (address)) store church-list) (cons 'a306 . (address)) store church-b) ((church-force (cons 'a307 . (address)) store church-pair) (cons 'a308 . (address)) store church-a ((church-force (cons 'a309 . (address)) store church-range) (cons 'a310 . (address)) store ((church-force (cons 'a311 . (address)) store church-+) (cons 'a312 . (address)) store church-a 1) church-b))))) (church-make-stateless-xrp (lambda (address store church-xrp-name church-sampler church-scorer . church-optional-args) ((church-force (cons 'a313 . (address)) store (lambda (address store church-proposer church-support) ((church-force (cons 'a314 . (address)) store church-make-xrp) (cons 'a315 . (address)) store church-xrp-name (lambda (address store church-stats church-hyperparams church-args) ((church-force (cons 'a316 . (address)) store (lambda (address store church-value) ((church-force (cons 'a317 . (address)) store church-list) (cons 'a318 . (address)) store church-value church-stats ((church-force (cons 'a319 . (address)) store church-scorer) (cons 'a320 . (address)) store church-args church-value)))) (cons 'a321 . (address)) store ((church-force (cons 'a322 . (address)) store church-apply) (cons 'a323 . (address)) store church-sampler church-args))) (lambda (address store church-value church-stats church-hyperparams church-args) ((church-force (cons 'a324 . (address)) store church-list) (cons 'a325 . (address)) store church-value church-stats ((church-force (cons 'a326 . (address)) store church-scorer) (cons 'a327 . (address)) store church-args church-value))) (lambda (address store church-value church-stats church-hyperparams church-args) ((church-force (cons 'a328 . (address)) store church-list) (cons 'a329 . (address)) store church-value church-stats ((church-force (cons 'a330 . (address)) store church-scorer) (cons 'a331 . (address)) store church-args church-value))) 'scorer '() '() church-proposer church-support))) (cons 'a332 . (address)) store ((church-force (cons 'a333 . (address)) store church-get-proposer) (cons 'a334 . (address)) store church-optional-args) ((church-force (cons 'a335 . (address)) store church-get-support) (cons 'a336 . (address)) store church-optional-args)))) (church-get-proposer (lambda (address store church-args) (if (church-force (cons 'a337 . (address)) store ((church-force (cons 'a338 . (address)) store church-null?) (cons 'a339 . (address)) store church-args)) '() ((church-force (cons 'a340 . (address)) store church-first) (cons 'a341 . (address)) store church-args)))) (church-get-support (lambda (address store church-args) (if (church-force (cons 'a342 . (address)) store ((church-force (cons 'a343 . (address)) store church-null?) (cons 'a344 . (address)) store church-args)) '() (if (church-force (cons 'a345 . (address)) store ((church-force (cons 'a346 . (address)) store church-null?) (cons 'a347 . (address)) store ((church-force (cons 'a348 . (address)) store church-rest) (cons 'a349 . (address)) store church-args))) '() ((church-force (cons 'a350 . (address)) store (lambda (address store church-pr) (lambda (address store church-stats church-hyperparams church-args) ((church-force (cons 'a351 . (address)) store church-pr) (cons 'a352 . (address)) store church-args)))) (cons 'a353 . (address)) store ((church-force (cons 'a354 . (address)) store church-second) (cons 'a355 . (address)) store church-args)))))) (church-flip ((church-force (cons 'a356 . (address)) store church-make-stateless-xrp) (cons 'a357 . (address)) store 'flip (lambda (address store . church-w) (if (church-force (cons 'a358 . (address)) store ((church-force (cons 'a359 . (address)) store church-null?) (cons 'a360 . (address)) store church-w)) ((church-force (cons 'a361 . (address)) store church-<) (cons 'a362 . (address)) store ((church-force (cons 'a363 . (address)) store church-random-real) (cons 'a364 . (address)) store) 0.5) ((church-force (cons 'a365 . (address)) store church-<) (cons 'a366 . (address)) store ((church-force (cons 'a367 . (address)) store church-random-real) (cons 'a368 . (address)) store) ((church-force (cons 'a369 . (address)) store church-car) (cons 'a370 . (address)) store church-w)))) (lambda (address store church-args church-val) (if (church-force (cons 'a371 . (address)) store ((church-force (cons 'a372 . (address)) store church-null?) (cons 'a373 . (address)) store church-args)) ((church-force (cons 'a374 . (address)) store church--) (cons 'a375 . (address)) store ((church-force (cons 'a376 . (address)) store church-log) (cons 'a377 . (address)) store 2.0)) (if (church-force (cons 'a378 . (address)) store church-val) ((church-force (cons 'a379 . (address)) store church-log) (cons 'a380 . (address)) store ((church-force (cons 'a381 . (address)) store church-first) (cons 'a382 . (address)) store church-args)) ((church-force (cons 'a383 . (address)) store church-log) (cons 'a384 . (address)) store ((church-force (cons 'a385 . (address)) store church--) (cons 'a386 . (address)) store 1 ((church-force (cons 'a387 . (address)) store church-first) (cons 'a388 . (address)) store church-args)))))) '() (lambda (address store church-args) ((church-force (cons 'a389 . (address)) store church-list) (cons 'a390 . (address)) store church-true church-false)))) (church-log-flip ((church-force (cons 'a391 . (address)) store church-make-stateless-xrp) (cons 'a392 . (address)) store 'log-flip (lambda (address store . church-w) (if (church-force (cons 'a393 . (address)) store ((church-force (cons 'a394 . (address)) store church-null?) (cons 'a395 . (address)) store church-w)) ((church-force (cons 'a396 . (address)) store church-<) (cons 'a397 . (address)) store ((church-force (cons 'a398 . (address)) store church-random-real) (cons 'a399 . (address)) store) 0.5) ((church-force (cons 'a400 . (address)) store church-<) (cons 'a401 . (address)) store ((church-force (cons 'a402 . (address)) store church-log) (cons 'a403 . (address)) store ((church-force (cons 'a404 . (address)) store church-random-real) (cons 'a405 . (address)) store)) ((church-force (cons 'a406 . (address)) store church-car) (cons 'a407 . (address)) store church-w)))) (lambda (address store church-args church-val) (if (church-force (cons 'a408 . (address)) store ((church-force (cons 'a409 . (address)) store church-null?) (cons 'a410 . (address)) store church-args)) ((church-force (cons 'a411 . (address)) store church--) (cons 'a412 . (address)) store ((church-force (cons 'a413 . (address)) store church-log) (cons 'a414 . (address)) store 2.0)) (if (church-force (cons 'a415 . (address)) store church-val) ((church-force (cons 'a416 . (address)) store church-first) (cons 'a417 . (address)) store church-args) ((church-force (cons 'a418 . (address)) store church-log) (cons 'a419 . (address)) store ((church-force (cons 'a420 . (address)) store church--) (cons 'a421 . (address)) store 1.0 ((church-force (cons 'a422 . (address)) store church-exp) (cons 'a423 . (address)) store ((church-force (cons 'a424 . (address)) store church-first) (cons 'a425 . (address)) store church-args))))))))) (church-dirichlet ((church-force (cons 'a426 . (address)) store church-make-stateless-xrp) (cons 'a427 . (address)) store 'dirichlet church-sample-dirichlet (lambda (address store church-args church-val) ((church-force (cons 'a428 . (address)) store church-dirichlet-lnpdf) (cons 'a429 . (address)) store ((church-force (cons 'a430 . (address)) store church-first) (cons 'a431 . (address)) store church-args) church-val)))) (church-sample-discrete ((church-force (cons 'a432 . (address)) store church-make-stateless-xrp) (cons 'a433 . (address)) store 'sample-discrete church-discrete-sampler (lambda (address store church-args church-val) (if (church-force (cons 'a434 . (address)) store ((church-force (cons 'a435 . (address)) store church->=) (cons 'a436 . (address)) store church-val ((church-force (cons 'a437 . (address)) store church-length) (cons 'a438 . (address)) store ((church-force (cons 'a439 . (address)) store church-first) (cons 'a440 . (address)) store church-args)))) -inf.0 ((church-force (cons 'a441 . (address)) store (lambda (address store church-p) (if (church-force (cons 'a442 . (address)) store ((church-force (cons 'a443 . (address)) store church->) (cons 'a444 . (address)) store church-p 0)) ((church-force (cons 'a445 . (address)) store church-log) (cons 'a446 . (address)) store church-p) -inf.0))) (cons 'a447 . (address)) store ((church-force (cons 'a448 . (address)) store church-discrete-pdf) (cons 'a449 . (address)) store ((church-force (cons 'a450 . (address)) store church-first) (cons 'a451 . (address)) store church-args) church-val)))) '() (lambda (address store church-args) ((church-force (cons 'a452 . (address)) store church-iota) (cons 'a453 . (address)) store ((church-force (cons 'a454 . (address)) store church-length) (cons 'a455 . (address)) store ((church-force (cons 'a456 . (address)) store church-first) (cons 'a457 . (address)) store church-args)))))) (church-sample-integer ((church-force (cons 'a458 . (address)) store church-make-stateless-xrp) (cons 'a459 . (address)) store 'sample-integer church-random-integer (lambda (address store church-args church-val) ((church-force (cons 'a460 . (address)) store (lambda (address store church-n) (if (church-force (cons 'a461 . (address)) store ((church-force (cons 'a462 . (address)) store church-and) (cons 'a463 . (address)) store ((church-force (cons 'a464 . (address)) store church-integer?) (cons 'a465 . (address)) store church-val) ((church-force (cons 'a466 . (address)) store church->=) (cons 'a467 . (address)) store church-val 0) ((church-force (cons 'a468 . (address)) store church-<) (cons 'a469 . (address)) store church-val church-n))) ((church-force (cons 'a470 . (address)) store church--) (cons 'a471 . (address)) store ((church-force (cons 'a472 . (address)) store church-log) (cons 'a473 . (address)) store church-n)) -inf.0))) (cons 'a474 . (address)) store ((church-force (cons 'a475 . (address)) store church-first) (cons 'a476 . (address)) store church-args))) '() (lambda (address store church-args) ((church-force (cons 'a477 . (address)) store church-iota) (cons 'a478 . (address)) store ((church-force (cons 'a479 . (address)) store church-first) (cons 'a480 . (address)) store church-args))))) (church-uniform ((church-force (cons 'a481 . (address)) store church-make-stateless-xrp) (cons 'a482 . (address)) store 'uniform (lambda (address store church-a church-b) ((church-force (cons 'a483 . (address)) store church-+) (cons 'a484 . (address)) store ((church-force (cons 'a485 . (address)) store church-*) (cons 'a486 . (address)) store ((church-force (cons 'a487 . (address)) store church--) (cons 'a488 . (address)) store church-b church-a) ((church-force (cons 'a489 . (address)) store church-random-real) (cons 'a490 . (address)) store)) church-a)) (lambda (address store church-args church-val) ((church-force (cons 'a491 . (address)) store (lambda (address store church-a church-b) (if (church-force (cons 'a492 . (address)) store ((church-force (cons 'a493 . (address)) store church-or) (cons 'a494 . (address)) store ((church-force (cons 'a495 . (address)) store church-<) (cons 'a496 . (address)) store church-val church-a) ((church-force (cons 'a497 . (address)) store church->) (cons 'a498 . (address)) store church-val church-b))) -inf.0 ((church-force (cons 'a499 . (address)) store church--) (cons 'a500 . (address)) store ((church-force (cons 'a501 . (address)) store church-log) (cons 'a502 . (address)) store ((church-force (cons 'a503 . (address)) store church--) (cons 'a504 . (address)) store church-b church-a)))))) (cons 'a505 . (address)) store ((church-force (cons 'a506 . (address)) store church-first) (cons 'a507 . (address)) store church-args) ((church-force (cons 'a508 . (address)) store church-second) (cons 'a509 . (address)) store church-args))))) (church-exponential ((church-force (cons 'a510 . (address)) store church-make-stateless-xrp) (cons 'a511 . (address)) store 'exponential (lambda (address store church-inv-mean) ((church-force (cons 'a512 . (address)) store church--) (cons 'a513 . (address)) store ((church-force (cons 'a514 . (address)) store church-/) (cons 'a515 . (address)) store ((church-force (cons 'a516 . (address)) store church-log) (cons 'a517 . (address)) store ((church-force (cons 'a518 . (address)) store church-random-real) (cons 'a519 . (address)) store)) church-inv-mean))) (lambda (address store church-args church-val) (if (church-force (cons 'a520 . (address)) store ((church-force (cons 'a521 . (address)) store church-<) (cons 'a522 . (address)) store church-val 0)) -inf.0 ((church-force (cons 'a523 . (address)) store (lambda (address store church-inv-mean) ((church-force (cons 'a524 . (address)) store church-+) (cons 'a525 . (address)) store ((church-force (cons 'a526 . (address)) store church-log) (cons 'a527 . (address)) store church-inv-mean) ((church-force (cons 'a528 . (address)) store church--) (cons 'a529 . (address)) store ((church-force (cons 'a530 . (address)) store church-*) (cons 'a531 . (address)) store church-inv-mean church-val))))) (cons 'a532 . (address)) store ((church-force (cons 'a533 . (address)) store church-first) (cons 'a534 . (address)) store church-args)))))) (church-gaussian ((church-force (cons 'a535 . (address)) store church-make-stateless-xrp) (cons 'a536 . (address)) store 'gaussian (lambda (address store . church-args) ((church-force (cons 'a537 . (address)) store church-sample-gaussian) (cons 'a538 . (address)) store ((church-force (cons 'a539 . (address)) store church-first) (cons 'a540 . (address)) store church-args) ((church-force (cons 'a541 . (address)) store church-second) (cons 'a542 . (address)) store church-args))) (lambda (address store church-args church-val) ((church-force (cons 'a543 . (address)) store church-gaussian-lnpdf) (cons 'a544 . (address)) store church-val ((church-force (cons 'a545 . (address)) store church-first) (cons 'a546 . (address)) store church-args) ((church-force (cons 'a547 . (address)) store church-second) (cons 'a548 . (address)) store church-args))))) (church-gensym ((church-force (cons 'a549 . (address)) store church-make-stateless-xrp) (cons 'a550 . (address)) store 'gensym (lambda (address store . church-prefix) ((church-force (cons 'a551 . (address)) store church-apply) (cons 'a552 . (address)) store church-scheme-gensym church-prefix)) (lambda (address store church-args church-val) ((church-force (cons 'a553 . (address)) store church-log) (cons 'a554 . (address)) store 0.9)))) (church-random-permutation ((church-force (cons 'a555 . (address)) store church-make-stateless-xrp) (cons 'a556 . (address)) store 'random-permutation (lambda (address store church-len) (letrec ((church-loop (lambda (address store church-perm church-n) (if (church-force (cons 'a557 . (address)) store ((church-force (cons 'a558 . (address)) store church-=) (cons 'a559 . (address)) store church-n 0)) church-perm ((church-force (cons 'a560 . (address)) store (lambda (address store church-k) ((church-force (cons 'a561 . (address)) store church-loop) (cons 'a562 . (address)) store ((church-force (cons 'a563 . (address)) store church-put) (cons 'a564 . (address)) store ((church-force (cons 'a565 . (address)) store church-put) (cons 'a566 . (address)) store church-perm church-k ((church-force (cons 'a567 . (address)) store church-list-ref) (cons 'a568 . (address)) store church-perm church-n)) church-n ((church-force (cons 'a569 . (address)) store church-list-ref) (cons 'a570 . (address)) store church-perm church-k)) ((church-force (cons 'a571 . (address)) store church--) (cons 'a572 . (address)) store church-n 1)))) (cons 'a573 . (address)) store ((church-force (cons 'a574 . (address)) store church-sample-integer) (cons 'a575 . (address)) store ((church-force (cons 'a576 . (address)) store church-+) (cons 'a577 . (address)) store church-n 1))))))) ((church-force (cons 'a578 . (address)) store church-loop) (cons 'a579 . (address)) store ((church-force (cons 'a580 . (address)) store church-iota) (cons 'a581 . (address)) store church-len) ((church-force (cons 'a582 . (address)) store church--) (cons 'a583 . (address)) store church-len 1)))) (lambda (address store church-args church-val) ((church-force (cons 'a584 . (address)) store (lambda (address store church-len) (if (church-force (cons 'a585 . (address)) store ((church-force (cons 'a586 . (address)) store church-=) (cons 'a587 . (address)) store church-len ((church-force (cons 'a588 . (address)) store church-length) (cons 'a589 . (address)) store church-val))) ((church-force (cons 'a590 . (address)) store church--) (cons 'a591 . (address)) store ((church-force (cons 'a592 . (address)) store church-lnfact) (cons 'a593 . (address)) store church-len)) ((church-force (cons 'a594 . (address)) store church-log) (cons 'a595 . (address)) store 0)))) (cons 'a596 . (address)) store ((church-force (cons 'a597 . (address)) store church-first) (cons 'a598 . (address)) store church-args))))) (church-put (lambda (address store church-lst church-ind church-elt) ((church-force (cons 'a599 . (address)) store church-append) (cons 'a600 . (address)) store ((church-force (cons 'a601 . (address)) store church-take) (cons 'a602 . (address)) store church-lst church-ind) ((church-force (cons 'a603 . (address)) store church-list) (cons 'a604 . (address)) store church-elt) ((church-force (cons 'a605 . (address)) store church-drop) (cons 'a606 . (address)) store church-lst ((church-force (cons 'a607 . (address)) store church-+) (cons 'a608 . (address)) store 1 church-ind))))) (church-permute (lambda (address store church-lst) ((church-force (cons 'a609 . (address)) store church-map) (cons 'a610 . (address)) store (lambda (address store church-ind) ((church-force (cons 'a611 . (address)) store church-list-ref) (cons 'a612 . (address)) store church-lst church-ind)) ((church-force (cons 'a613 . (address)) store church-random-permutation) (cons 'a614 . (address)) store ((church-force (cons 'a615 . (address)) store church-length) (cons 'a616 . (address)) store church-lst))))) (church-make-dirichlet-discrete (lambda (address store church-hyp) ((church-force (cons 'a617 . (address)) store church-make-xrp) (cons 'a618 . (address)) store 'dirichlet-discrete (lambda (address store church-stats church-hyperparams church-args) ((church-force (cons 'a619 . (address)) store (lambda (address store church-counts) ((church-force (cons 'a620 . (address)) store (lambda (address store church-total-counts) ((church-force (cons 'a621 . (address)) store (lambda (address store church-probs) ((church-force (cons 'a622 . (address)) store (lambda (address store church-value) ((church-force (cons 'a623 . (address)) store (lambda (address store church-new-stats) ((church-force (cons 'a624 . (address)) store church-list) (cons 'a625 . (address)) store church-value church-new-stats ((church-force (cons 'a626 . (address)) store church-log) (cons 'a627 . (address)) store ((church-force (cons 'a628 . (address)) store church-list-ref) (cons 'a629 . (address)) store church-probs church-value))))) (cons 'a630 . (address)) store ((church-force (cons 'a631 . (address)) store church-append) (cons 'a632 . (address)) store ((church-force (cons 'a633 . (address)) store church-take) (cons 'a634 . (address)) store church-stats church-value) ((church-force (cons 'a635 . (address)) store church-list) (cons 'a636 . (address)) store ((church-force (cons 'a637 . (address)) store church-+) (cons 'a638 . (address)) store 1 ((church-force (cons 'a639 . (address)) store church-list-ref) (cons 'a640 . (address)) store church-stats church-value))) ((church-force (cons 'a641 . (address)) store church-drop) (cons 'a642 . (address)) store church-stats ((church-force (cons 'a643 . (address)) store church-+) (cons 'a644 . (address)) store 1 church-value)))))) (cons 'a645 . (address)) store ((church-force (cons 'a646 . (address)) store church-sample-discrete) (cons 'a647 . (address)) store church-probs)))) (cons 'a648 . (address)) store ((church-force (cons 'a649 . (address)) store church-map) (cons 'a650 . (address)) store (lambda (address store church-c) ((church-force (cons 'a651 . (address)) store church-/) (cons 'a652 . (address)) store church-c church-total-counts)) church-counts)))) (cons 'a653 . (address)) store ((church-force (cons 'a654 . (address)) store church-apply) (cons 'a655 . (address)) store church-+ church-counts)))) (cons 'a656 . (address)) store ((church-force (cons 'a657 . (address)) store church-map) (cons 'a658 . (address)) store church-+ church-stats church-hyperparams))) (lambda (address store church-value church-stats church-hyperparams church-args) ((church-force (cons 'a659 . (address)) store church-list) (cons 'a660 . (address)) store church-value ((church-force (cons 'a661 . (address)) store church-append) (cons 'a662 . (address)) store ((church-force (cons 'a663 . (address)) store church-take) (cons 'a664 . (address)) store church-stats church-value) ((church-force (cons 'a665 . (address)) store church-list) (cons 'a666 . (address)) store ((church-force (cons 'a667 . (address)) store church-+) (cons 'a668 . (address)) store ((church-force (cons 'a669 . (address)) store church-list-ref) (cons 'a670 . (address)) store church-stats church-value) 1)) ((church-force (cons 'a671 . (address)) store church-drop) (cons 'a672 . (address)) store church-stats ((church-force (cons 'a673 . (address)) store church-+) (cons 'a674 . (address)) store 1 church-value))) ((church-force (cons 'a675 . (address)) store church--) (cons 'a676 . (address)) store ((church-force (cons 'a677 . (address)) store church-log) (cons 'a678 . (address)) store ((church-force (cons 'a679 . (address)) store church-+) (cons 'a680 . (address)) store ((church-force (cons 'a681 . (address)) store church-list-ref) (cons 'a682 . (address)) store church-stats church-value) ((church-force (cons 'a683 . (address)) store church-list-ref) (cons 'a684 . (address)) store church-hyperparams church-value))) ((church-force (cons 'a685 . (address)) store church-log) (cons 'a686 . (address)) store ((church-force (cons 'a687 . (address)) store church-+) (cons 'a688 . (address)) store ((church-force (cons 'a689 . (address)) store church-apply) (cons 'a690 . (address)) store church-+ church-stats) ((church-force (cons 'a691 . (address)) store church-apply) (cons 'a692 . (address)) store church-+ church-hyperparams)))))) (lambda (address store church-value church-stats church-hyperparams church-args) ((church-force (cons 'a693 . (address)) store church-list) (cons 'a694 . (address)) store church-value ((church-force (cons 'a695 . (address)) store church-append) (cons 'a696 . (address)) store ((church-force (cons 'a697 . (address)) store church-take) (cons 'a698 . (address)) store church-stats church-value) ((church-force (cons 'a699 . (address)) store church-list) (cons 'a700 . (address)) store ((church-force (cons 'a701 . (address)) store church--) (cons 'a702 . (address)) store ((church-force (cons 'a703 . (address)) store church-list-ref) (cons 'a704 . (address)) store church-stats church-value) 1)) ((church-force (cons 'a705 . (address)) store church-drop) (cons 'a706 . (address)) store church-stats ((church-force (cons 'a707 . (address)) store church-+) (cons 'a708 . (address)) store 1 church-value))) ((church-force (cons 'a709 . (address)) store church-+) (cons 'a710 . (address)) store ((church-force (cons 'a711 . (address)) store church-log) (cons 'a712 . (address)) store ((church-force (cons 'a713 . (address)) store church-+) (cons 'a714 . (address)) store -1 ((church-force (cons 'a715 . (address)) store church-list-ref) (cons 'a716 . (address)) store church-stats church-value) ((church-force (cons 'a717 . (address)) store church-list-ref) (cons 'a718 . (address)) store church-hyperparams church-value))) ((church-force (cons 'a719 . (address)) store church--) (cons 'a720 . (address)) store ((church-force (cons 'a721 . (address)) store church-log) (cons 'a722 . (address)) store ((church-force (cons 'a723 . (address)) store church-+) (cons 'a724 . (address)) store -1 ((church-force (cons 'a725 . (address)) store church-apply) (cons 'a726 . (address)) store church-+ church-stats) ((church-force (cons 'a727 . (address)) store church-apply) (cons 'a728 . (address)) store church-+ church-hyperparams))))))) 'dirichlet-discrete-scorer ((church-force (cons 'a729 . (address)) store church-make-list) (cons 'a730 . (address)) store ((church-force (cons 'a731 . (address)) store church-length) (cons 'a732 . (address)) store church-hyp) 0.0) church-hyp '() (lambda (address store church-stats church-hyperparams church-args) ((church-force (cons 'a733 . (address)) store church-iota) (cons 'a734 . (address)) store ((church-force (cons 'a735 . (address)) store church-length) (cons 'a736 . (address)) store church-hyperparams)))))) (church-make-beta-binomial (lambda (address store church-alpha church-beta) ((church-force (cons 'a737 . (address)) store (lambda (address store church-dd) (lambda (address store) ((church-force (cons 'a738 . (address)) store church-=) (cons 'a739 . (address)) store ((church-force (cons 'a740 . (address)) store church-dd) (cons 'a741 . (address)) store) 1)))) (cons 'a742 . (address)) store ((church-force (cons 'a743 . (address)) store church-make-dirichlet-discrete) (cons 'a744 . (address)) store ((church-force (cons 'a745 . (address)) store church-list) (cons 'a746 . (address)) store church-alpha church-beta))))) (church-make-symmetric-dirichlet-discrete (lambda (address store church-N church-hyp) ((church-force (cons 'a747 . (address)) store church-make-dirichlet-discrete) (cons 'a748 . (address)) store ((church-force (cons 'a749 . (address)) store church-make-list) (cons 'a750 . (address)) store church-N church-hyp)))) (church-make-CRP (lambda (address store church-alpha) ((church-force (cons 'a751 . (address)) store church-make-xrp) (cons 'a752 . (address)) store 'CRP (lambda (address store church-stats church-hyperparam church-args) ((church-force (cons 'a753 . (address)) store (lambda (address store church-count-map) ((church-force (cons 'a754 . (address)) store (lambda (address store church-counts) ((church-force (cons 'a755 . (address)) store (lambda (address store church-total-counts) ((church-force (cons 'a756 . (address)) store (lambda (address store church-probs) ((church-force (cons 'a757 . (address)) store (lambda (address store church-table-index) (if (church-force (cons 'a758 . (address)) store ((church-force (cons 'a759 . (address)) store church-=) (cons 'a760 . (address)) store church-table-index 0)) ((church-force (cons 'a761 . (address)) store (lambda (address store church-table-symbol) ((church-force (cons 'a762 . (address)) store (lambda (address store church-new-count-map) ((church-force (cons 'a763 . (address)) store church-list) (cons 'a764 . (address)) store church-table-symbol church-new-count-map ((church-force (cons 'a765 . (address)) store church-list-ref) (cons 'a766 . (address)) store church-probs church-table-index)))) (cons 'a767 . (address)) store ((church-force (cons 'a768 . (address)) store church-pair) (cons 'a769 . (address)) store ((church-force (cons 'a770 . (address)) store church-pair) (cons 'a771 . (address)) store church-table-symbol 1) church-count-map)))) (cons 'a772 . (address)) store ((church-force (cons 'a773 . (address)) store church-gensym) (cons 'a774 . (address)) store)) ((church-force (cons 'a775 . (address)) store (lambda (address store church-table-symbol) ((church-force (cons 'a776 . (address)) store (lambda (address store church-table-count) ((church-force (cons 'a777 . (address)) store (lambda (address store church-new-count-map) ((church-force (cons 'a778 . (address)) store church-list) (cons 'a779 . (address)) store church-table-symbol church-new-count-map ((church-force (cons 'a780 . (address)) store church-list-ref) (cons 'a781 . (address)) store church-probs church-table-index)))) (cons 'a782 . (address)) store ((church-force (cons 'a783 . (address)) store church-append) (cons 'a784 . (address)) store ((church-force (cons 'a785 . (address)) store church-take) (cons 'a786 . (address)) store church-count-map ((church-force (cons 'a787 . (address)) store church--) (cons 'a788 . (address)) store church-table-index 1)) ((church-force (cons 'a789 . (address)) store church-list) (cons 'a790 . (address)) store ((church-force (cons 'a791 . (address)) store church-pair) (cons 'a792 . (address)) store church-table-symbol church-table-count)) ((church-force (cons 'a793 . (address)) store church-drop) (cons 'a794 . (address)) store church-count-map church-table-index))))) (cons 'a795 . (address)) store ((church-force (cons 'a796 . (address)) store church-+) (cons 'a797 . (address)) store 1 ((church-force (cons 'a798 . (address)) store church-rest) (cons 'a799 . (address)) store ((church-force (cons 'a800 . (address)) store church-list-ref) (cons 'a801 . (address)) store church-count-map ((church-force (cons 'a802 . (address)) store church--) (cons 'a803 . (address)) store church-table-index 1))))))) (cons 'a804 . (address)) store ((church-force (cons 'a805 . (address)) store church-first) (cons 'a806 . (address)) store ((church-force (cons 'a807 . (address)) store church-list-ref) (cons 'a808 . (address)) store church-count-map ((church-force (cons 'a809 . (address)) store church--) (cons 'a810 . (address)) store church-table-index 1))))))) (cons 'a811 . (address)) store ((church-force (cons 'a812 . (address)) store church-sample-discrete) (cons 'a813 . (address)) store church-probs)))) (cons 'a814 . (address)) store ((church-force (cons 'a815 . (address)) store church-map) (cons 'a816 . (address)) store (lambda (address store church-c) ((church-force (cons 'a817 . (address)) store church-/) (cons 'a818 . (address)) store church-c church-total-counts)) church-counts)))) (cons 'a819 . (address)) store ((church-force (cons 'a820 . (address)) store church-apply) (cons 'a821 . (address)) store church-+ church-counts)))) (cons 'a822 . (address)) store ((church-force (cons 'a823 . (address)) store church-pair) (cons 'a824 . (address)) store church-hyperparam ((church-force (cons 'a825 . (address)) store church-map) (cons 'a826 . (address)) store church-rest church-count-map))))) (cons 'a827 . (address)) store church-stats)) (lambda (address store church-value church-stats church-hyperparam church-args) ((church-force (cons 'a828 . (address)) store (lambda (address store church-count-map) ((church-force (cons 'a829 . (address)) store (lambda (address store church-counts) ((church-force (cons 'a830 . (address)) store (lambda (address store church-total-counts) ((church-force (cons 'a831 . (address)) store (lambda (address store church-probs) ((church-force (cons 'a832 . (address)) store (lambda (address store church-table-index) (if (church-force (cons 'a833 . (address)) store ((church-force (cons 'a834 . (address)) store church-eq?) (cons 'a835 . (address)) store church-false church-table-index)) ((church-force (cons 'a836 . (address)) store church-list) (cons 'a837 . (address)) store church-value ((church-force (cons 'a838 . (address)) store church-pair) (cons 'a839 . (address)) store ((church-force (cons 'a840 . (address)) store church-pair) (cons 'a841 . (address)) store church-value 1) church-count-map) ((church-force (cons 'a842 . (address)) store church-list-ref) (cons 'a843 . (address)) store church-probs 0)) ((church-force (cons 'a844 . (address)) store (lambda (address store church-table-count) ((church-force (cons 'a845 . (address)) store (lambda (address store church-new-table-count) ((church-force (cons 'a846 . (address)) store (lambda (address store church-new-count-map) ((church-force (cons 'a847 . (address)) store church-list) (cons 'a848 . (address)) store church-value church-new-count-map ((church-force (cons 'a849 . (address)) store church-list-ref) (cons 'a850 . (address)) store church-probs church-table-index)))) (cons 'a851 . (address)) store ((church-force (cons 'a852 . (address)) store church-append) (cons 'a853 . (address)) store ((church-force (cons 'a854 . (address)) store church-take) (cons 'a855 . (address)) store church-count-map church-table-index) ((church-force (cons 'a856 . (address)) store church-list) (cons 'a857 . (address)) store ((church-force (cons 'a858 . (address)) store church-pair) (cons 'a859 . (address)) store church-value church-new-table-count)) ((church-force (cons 'a860 . (address)) store church-drop) (cons 'a861 . (address)) store church-count-map ((church-force (cons 'a862 . (address)) store church-+) (cons 'a863 . (address)) store 1 church-table-index)))))) (cons 'a864 . (address)) store ((church-force (cons 'a865 . (address)) store church-+) (cons 'a866 . (address)) store church-table-count 1)))) (cons 'a867 . (address)) store ((church-force (cons 'a868 . (address)) store church-rest) (cons 'a869 . (address)) store ((church-force (cons 'a870 . (address)) store church-list-ref) (cons 'a871 . (address)) store church-count-map church-table-index)))))) (cons 'a872 . (address)) store ((church-force (cons 'a873 . (address)) store church-list-index) (cons 'a874 . (address)) store (lambda (address store church-c) ((church-force (cons 'a875 . (address)) store church-eq?) (cons 'a876 . (address)) store church-value ((church-force (cons 'a877 . (address)) store church-first) (cons 'a878 . (address)) store church-c))) church-count-map)))) (cons 'a879 . (address)) store ((church-force (cons 'a880 . (address)) store church-map) (cons 'a881 . (address)) store (lambda (address store church-c) ((church-force (cons 'a882 . (address)) store church-/) (cons 'a883 . (address)) store church-c church-total-counts)) church-counts)))) (cons 'a884 . (address)) store ((church-force (cons 'a885 . (address)) store church-apply) (cons 'a886 . (address)) store church-+ church-counts)))) (cons 'a887 . (address)) store ((church-force (cons 'a888 . (address)) store church-pair) (cons 'a889 . (address)) store church-hyperparam ((church-force (cons 'a890 . (address)) store church-map) (cons 'a891 . (address)) store church-rest church-count-map))))) (cons 'a892 . (address)) store church-stats)) (lambda (address store church-value church-stats church-hyperparam church-args) ((church-force (cons 'a893 . (address)) store (lambda (address store church-count-map) ((church-force (cons 'a894 . (address)) store (lambda (address store church-counts) ((church-force (cons 'a895 . (address)) store (lambda (address store church-table-index) (if (church-force (cons 'a896 . (address)) store ((church-force (cons 'a897 . (address)) store church-eq?) (cons 'a898 . (address)) store church-false church-table-index)) ((church-force (cons 'a899 . (address)) store church-error) (cons 'a900 . (address)) store church-table-index "can't decr a value from CRP that doesn't label any table!") ((church-force (cons 'a901 . (address)) store (lambda (address store church-table-count) ((church-force (cons 'a902 . (address)) store (lambda (address store church-new-table-count) ((church-force (cons 'a903 . (address)) store (lambda (address store church-new-count-map) ((church-force (cons 'a904 . (address)) store church-list) (cons 'a905 . (address)) store church-value church-new-count-map (if (church-force (cons 'a906 . (address)) store ((church-force (cons 'a907 . (address)) store church-=) (cons 'a908 . (address)) store 0 church-new-table-count)) ((church-force (cons 'a909 . (address)) store church-/) (cons 'a910 . (address)) store church-hyperparam ((church-force (cons 'a911 . (address)) store church-+) (cons 'a912 . (address)) store church-hyperparam ((church-force (cons 'a913 . (address)) store church-apply) (cons 'a914 . (address)) store church-+ church-counts) ((church-force (cons 'a915 . (address)) store church--) (cons 'a916 . (address)) store 1))) ((church-force (cons 'a917 . (address)) store church-/) (cons 'a918 . (address)) store church-new-table-count ((church-force (cons 'a919 . (address)) store church-+) (cons 'a920 . (address)) store church-hyperparam ((church-force (cons 'a921 . (address)) store church-apply) (cons 'a922 . (address)) store church-+ church-counts) ((church-force (cons 'a923 . (address)) store church--) (cons 'a924 . (address)) store 1))))))) (cons 'a925 . (address)) store (if (church-force (cons 'a926 . (address)) store ((church-force (cons 'a927 . (address)) store church-=) (cons 'a928 . (address)) store 0 church-new-table-count)) ((church-force (cons 'a929 . (address)) store church-append) (cons 'a930 . (address)) store ((church-force (cons 'a931 . (address)) store church-take) (cons 'a932 . (address)) store church-count-map church-table-index) ((church-force (cons 'a933 . (address)) store church-drop) (cons 'a934 . (address)) store church-count-map ((church-force (cons 'a935 . (address)) store church-+) (cons 'a936 . (address)) store 1 church-table-index))) ((church-force (cons 'a937 . (address)) store church-append) (cons 'a938 . (address)) store ((church-force (cons 'a939 . (address)) store church-take) (cons 'a940 . (address)) store church-count-map church-table-index) ((church-force (cons 'a941 . (address)) store church-list) (cons 'a942 . (address)) store ((church-force (cons 'a943 . (address)) store church-pair) (cons 'a944 . (address)) store church-value church-new-table-count)) ((church-force (cons 'a945 . (address)) store church-drop) (cons 'a946 . (address)) store church-count-map ((church-force (cons 'a947 . (address)) store church-+) (cons 'a948 . (address)) store 1 church-table-index))))))) (cons 'a949 . (address)) store ((church-force (cons 'a950 . (address)) store church--) (cons 'a951 . (address)) store church-table-count 1)))) (cons 'a952 . (address)) store ((church-force (cons 'a953 . (address)) store church-rest) (cons 'a954 . (address)) store ((church-force (cons 'a955 . (address)) store church-list-ref) (cons 'a956 . (address)) store church-count-map church-table-index)))))) (cons 'a957 . (address)) store ((church-force (cons 'a958 . (address)) store church-list-index) (cons 'a959 . (address)) store (lambda (address store church-c) ((church-force (cons 'a960 . (address)) store church-eq?) (cons 'a961 . (address)) store church-value ((church-force (cons 'a962 . (address)) store church-first) (cons 'a963 . (address)) store church-c))) church-count-map)))) (cons 'a964 . (address)) store ((church-force (cons 'a965 . (address)) store church-map) (cons 'a966 . (address)) store church-rest church-count-map)))) (cons 'a967 . (address)) store church-stats)) 'CRP-scorer '() church-alpha '() '()))) (church-DPmem (lambda (address store church-alpha church-proc) ((church-force (cons 'a968 . (address)) store (lambda (address store church-augmented-proc church-crps) (lambda (address store . church-argsin) ((church-force (cons 'a969 . (address)) store church-augmented-proc) (cons 'a970 . (address)) store church-argsin ((church-force (cons 'a971 . (address)) store ((church-force (cons 'a972 . (address)) store church-crps) (cons 'a973 . (address)) store church-argsin)) (cons 'a974 . (address)) store))))) (cons 'a975 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args church-part) ((church-force (cons 'a976 . (address)) store church-apply) (cons 'a977 . (address)) store church-proc church-args))) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args) ((church-force (cons 'a978 . (address)) store church-make-CRP) (cons 'a979 . (address)) store church-alpha)))))) (church-basic-proposal-distribution (lambda (address store church-state church-normal-form-proc) ((church-force (cons 'a980 . (address)) store (lambda (address store church-xrp-draws) ((church-force (cons 'a981 . (address)) store (lambda (address store church-with-proposer-calls) (if (church-force (cons 'a982 . (address)) store ((church-force (cons 'a983 . (address)) store church-and) (cons 'a984 . (address)) store ((church-force (cons 'a985 . (address)) store church-none?) (cons 'a986 . (address)) store church-xrp-draws) ((church-force (cons 'a987 . (address)) store church-none?) (cons 'a988 . (address)) store church-with-proposer-calls))) ((church-force (cons 'a989 . (address)) store church-trivial-proposal) (cons 'a990 . (address)) store church-state) (if (church-force (cons 'a991 . (address)) store ((church-force (cons 'a992 . (address)) store church-none?) (cons 'a993 . (address)) store church-xrp-draws)) ((church-force (cons 'a994 . (address)) store church-run-with-proposer) (cons 'a995 . (address)) store church-with-proposer-calls church-state church-normal-form-proc) (if (church-force (cons 'a996 . (address)) store ((church-force (cons 'a997 . (address)) store church-none?) (cons 'a998 . (address)) store church-with-proposer-calls)) ((church-force (cons 'a999 . (address)) store church-run-xrp-proposer) (cons 'a1000 . (address)) store church-xrp-draws church-state church-normal-form-proc) (if (church-force (cons 'a1001 . (address)) store ((church-force (cons 'a1002 . (address)) store church-flip) (cons 'a1003 . (address)) store)) ((church-force (cons 'a1004 . (address)) store church-run-with-proposer) (cons 'a1005 . (address)) store church-with-proposer-calls church-state church-normal-form-proc) ((church-force (cons 'a1006 . (address)) store church-run-xrp-proposer) (cons 'a1007 . (address)) store church-xrp-draws church-state church-normal-form-proc))))))) (cons 'a1008 . (address)) store ((church-force (cons 'a1009 . (address)) store church-mcmc-state->with-proposer-calls) (cons 'a1010 . (address)) store church-state)))) (cons 'a1011 . (address)) store ((church-force (cons 'a1012 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1013 . (address)) store church-state)))) (church-none? church-addbox-empty?) (church-addbox-draw-item (lambda (address store church-addbox) ((church-force (cons 'a1014 . (address)) store church-rest) (cons 'a1015 . (address)) store ((church-force (cons 'a1016 . (address)) store church-uniform-draw) (cons 'a1017 . (address)) store ((church-force (cons 'a1018 . (address)) store church-addbox->alist) (cons 'a1019 . (address)) store church-addbox))))) (church-run-with-proposer (lambda (address store church-with-proposer-calls church-state church-nfqp) ((church-force (cons 'a1020 . (address)) store (lambda (address store church-chosen) ((church-force (cons 'a1021 . (address)) store (lambda (address store church-old-value) ((church-force (cons 'a1022 . (address)) store (lambda (address store church-new-value+scores) ((church-force (cons 'a1023 . (address)) store (lambda (address store church-new-value) ((church-force (cons 'a1024 . (address)) store (lambda (address store church-fw-prob) ((church-force (cons 'a1025 . (address)) store (lambda (address store church-bw-prob) ((church-force (cons 'a1026 . (address)) store (lambda (address store church-interventions) ((church-force (cons 'a1027 . (address)) store (lambda (address store church-none) ((church-force (cons 'a1028 . (address)) store (lambda (address store church-ret2) ((church-force (cons 'a1029 . (address)) store (lambda (address store church-proposal-state) ((church-force (cons 'a1030 . (address)) store church-list) (cons 'a1031 . (address)) store ((church-force (cons 'a1032 . (address)) store church--) (cons 'a1033 . (address)) store church-bw-prob church-fw-prob) church-proposal-state))) (cons 'a1034 . (address)) store ((church-force (cons 'a1035 . (address)) store church-first) (cons 'a1036 . (address)) store church-ret2)))) (cons 'a1037 . (address)) store ((church-force (cons 'a1038 . (address)) store church-apply) (cons 'a1039 . (address)) store church-counterfactual-update ((church-force (cons 'a1040 . (address)) store church-append) (cons 'a1041 . (address)) store ((church-force (cons 'a1042 . (address)) store church-list) (cons 'a1043 . (address)) store church-state church-nfqp) church-interventions))))) (cons 'a1044 . (address)) store ((church-force (cons 'a1045 . (address)) store church-reset-with-proposer-calls) (cons 'a1046 . (address)) store church-state)))) (cons 'a1047 . (address)) store ((church-force (cons 'a1048 . (address)) store church-find-random-choices) (cons 'a1049 . (address)) store church-new-value church-chosen church-state)))) (cons 'a1050 . (address)) store ((church-force (cons 'a1051 . (address)) store church-third) (cons 'a1052 . (address)) store church-new-value+scores)))) (cons 'a1053 . (address)) store ((church-force (cons 'a1054 . (address)) store church-second) (cons 'a1055 . (address)) store church-new-value+scores)))) (cons 'a1056 . (address)) store ((church-force (cons 'a1057 . (address)) store church-first) (cons 'a1058 . (address)) store church-new-value+scores)))) (cons 'a1059 . (address)) store ((church-force (cons 'a1060 . (address)) store ((church-force (cons 'a1061 . (address)) store church-with-proposer-call-proposer) (cons 'a1062 . (address)) store church-chosen)) (cons 'a1063 . (address)) store church-old-value)))) (cons 'a1064 . (address)) store ((church-force (cons 'a1065 . (address)) store church-lazy-list->all-list) (cons 'a1066 . (address)) store ((church-force (cons 'a1067 . (address)) store church-with-proposer-call-value) (cons 'a1068 . (address)) store church-chosen))))) (cons 'a1069 . (address)) store ((church-force (cons 'a1070 . (address)) store church-addbox-draw-item) (cons 'a1071 . (address)) store church-with-proposer-calls)))) (church-find-random-choices (lambda (address store church-new-value church-chosen church-state) ((church-force (cons 'a1072 . (address)) store (lambda (address store church-new-value) ((church-force (cons 'a1073 . (address)) store (lambda (address store church-temps-nfqp) ((church-force (cons 'a1074 . (address)) store (lambda (address store church-depths) ((church-force (cons 'a1075 . (address)) store (lambda (address store church-address) ((church-force (cons 'a1076 . (address)) store (lambda (address store church-states) ((church-force (cons 'a1077 . (address)) store (lambda (address store church-xrp-draws) ((church-force (cons 'a1078 . (address)) store (lambda (address store church-interventions) church-interventions)) (cons 'a1079 . (address)) store ((church-force (cons 'a1080 . (address)) store church-map) (cons 'a1081 . (address)) store ((church-force (cons 'a1082 . (address)) store church-make-interventions) (cons 'a1083 . (address)) store church-address ((church-force (cons 'a1084 . (address)) store church-get-xrp-ticks) (cons 'a1085 . (address)) store church-state)) church-xrp-draws)))) (cons 'a1086 . (address)) store ((church-force (cons 'a1087 . (address)) store church-map) (cons 'a1088 . (address)) store church-rest ((church-force (cons 'a1089 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1090 . (address)) store ((church-force (cons 'a1091 . (address)) store church-first) (cons 'a1092 . (address)) store church-states)))))) (cons 'a1093 . (address)) store ((church-force (cons 'a1094 . (address)) store church-smc-core) (cons 'a1095 . (address)) store church-depths 1 2 church-temps-nfqp '())))) (cons 'a1096 . (address)) store ((church-force (cons 'a1097 . (address)) store church-with-proposer-call-address) (cons 'a1098 . (address)) store church-chosen)))) (cons 'a1099 . (address)) store ((church-force (cons 'a1100 . (address)) store church-map) (cons 'a1101 . (address)) store church-list ((church-force (cons 'a1102 . (address)) store church-iota) (cons 'a1103 . (address)) store ((church-force (cons 'a1104 . (address)) store church-compute-depth) (cons 'a1105 . (address)) store church-new-value)))))) (cons 'a1106 . (address)) store ((church-force (cons 'a1107 . (address)) store church-make-temps-nfqp) (cons 'a1108 . (address)) store church-new-value ((church-force (cons 'a1109 . (address)) store church-with-proposer-call-proc) (cons 'a1110 . (address)) store church-chosen))))) (cons 'a1111 . (address)) store ((church-force (cons 'a1112 . (address)) store church-list->lazy-list) (cons 'a1113 . (address)) store church-new-value)))) (church-make-temps-nfqp (lambda (address store church-target-value church-proc) (lambda (address store church-temp) (lambda (address store) (letrec ((church-p ((church-force (cons 'a1114 . (address)) store church-proc) (cons 'a1115 . (address)) store))) ((church-force (cons 'a1116 . (address)) store church-pair) (cons 'a1117 . (address)) store ((church-force (cons 'a1118 . (address)) store church-lazy-equal?) (cons 'a1119 . (address)) store church-p church-target-value church-temp) (lambda (address store) ((church-force (cons 'a1120 . (address)) store church-first) (cons 'a1121 . (address)) store ((church-force (cons 'a1122 . (address)) store church-lazy-list->list) (cons 'a1123 . (address)) store church-p church-temp))))))))) (church-get-xrp-ticks (lambda (address store church-mcmc-state) ((church-force (cons 'a1124 . (address)) store (lambda (address store church-draws-addbox) ((church-force (cons 'a1125 . (address)) store (lambda (address store church-xrp-draw) ((church-force (cons 'a1126 . (address)) store church-xrp-draw-ticks) (cons 'a1127 . (address)) store church-xrp-draw))) (cons 'a1128 . (address)) store ((church-force (cons 'a1129 . (address)) store church-rest) (cons 'a1130 . (address)) store ((church-force (cons 'a1131 . (address)) store church-first) (cons 'a1132 . (address)) store church-draws-addbox))))) (cons 'a1133 . (address)) store ((church-force (cons 'a1134 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1135 . (address)) store church-mcmc-state)))) (church-make-interventions (lambda (address store church-init-address church-state-xrp-ticks) (lambda (address store church-xrp-draw) ((church-force (cons 'a1136 . (address)) store (lambda (address store church-address) ((church-force (cons 'a1137 . (address)) store (lambda (address store church-new-address) ((church-force (cons 'a1138 . (address)) store (lambda (address store church-new-xrp-draw) ((church-force (cons 'a1139 . (address)) store church-pair) (cons 'a1140 . (address)) store church-new-xrp-draw ((church-force (cons 'a1141 . (address)) store church-xrp-draw-value) (cons 'a1142 . (address)) store church-xrp-draw)))) (cons 'a1143 . (address)) store ((church-force (cons 'a1144 . (address)) store church-make-xrp-draw) (cons 'a1145 . (address)) store church-new-address ((church-force (cons 'a1146 . (address)) store church-xrp-draw-value) (cons 'a1147 . (address)) store church-xrp-draw) ((church-force (cons 'a1148 . (address)) store church-xrp-draw-name) (cons 'a1149 . (address)) store church-xrp-draw) ((church-force (cons 'a1150 . (address)) store church-xrp-draw-proposer) (cons 'a1151 . (address)) store church-xrp-draw) church-state-xrp-ticks ((church-force (cons 'a1152 . (address)) store church-xrp-draw-score) (cons 'a1153 . (address)) store church-xrp-draw) ((church-force (cons 'a1154 . (address)) store church-xrp-draw-support) (cons 'a1155 . (address)) store church-xrp-draw))))) (cons 'a1156 . (address)) store ((church-force (cons 'a1157 . (address)) store church-adjust-address) (cons 'a1158 . (address)) store church-address church-init-address)))) (cons 'a1159 . (address)) store ((church-force (cons 'a1160 . (address)) store church-xrp-draw-address) (cons 'a1161 . (address)) store church-xrp-draw))))) (church-adjust-address (lambda (address store church-address church-init-address) ((church-force (cons 'a1162 . (address)) store church-append) (cons 'a1163 . (address)) store ((church-force (cons 'a1164 . (address)) store church-drop-right) (cons 'a1165 . (address)) store church-address 1) church-init-address))) (church-run-xrp-proposer (lambda (address store church-xrp-draws church-state church-nfqp) ((church-force (cons 'a1166 . (address)) store (lambda (address store church-chosen) ((church-force (cons 'a1167 . (address)) store (lambda (address store church-ret1) ((church-force (cons 'a1168 . (address)) store (lambda (address store church-proposed-val) ((church-force (cons 'a1169 . (address)) store (lambda (address store church-proposal-fw-score) ((church-force (cons 'a1170 . (address)) store (lambda (address store church-proposal-bw-score) ((church-force (cons 'a1171 . (address)) store (lambda (address store church-ret2) ((church-force (cons 'a1172 . (address)) store (lambda (address store church-proposal-state) ((church-force (cons 'a1173 . (address)) store (lambda (address store church-cd-bw/fw) ((church-force (cons 'a1174 . (address)) store (lambda (address store church-ind-fw) ((church-force (cons 'a1175 . (address)) store (lambda (address store church-ind-bw) ((church-force (cons 'a1176 . (address)) store church-list) (cons 'a1177 . (address)) store ((church-force (cons 'a1178 . (address)) store church-+) (cons 'a1179 . (address)) store ((church-force (cons 'a1180 . (address)) store church--) (cons 'a1181 . (address)) store church-proposal-bw-score church-proposal-fw-score) church-cd-bw/fw ((church-force (cons 'a1182 . (address)) store church--) (cons 'a1183 . (address)) store church-ind-bw church-ind-fw)) church-proposal-state))) (cons 'a1184 . (address)) store ((church-force (cons 'a1185 . (address)) store church--) (cons 'a1186 . (address)) store ((church-force (cons 'a1187 . (address)) store church-log) (cons 'a1188 . (address)) store ((church-force (cons 'a1189 . (address)) store church-addbox-size) (cons 'a1190 . (address)) store ((church-force (cons 'a1191 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1192 . (address)) store church-proposal-state))))))) (cons 'a1193 . (address)) store ((church-force (cons 'a1194 . (address)) store church--) (cons 'a1195 . (address)) store ((church-force (cons 'a1196 . (address)) store church-log) (cons 'a1197 . (address)) store ((church-force (cons 'a1198 . (address)) store church-addbox-size) (cons 'a1199 . (address)) store ((church-force (cons 'a1200 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1201 . (address)) store church-state))))))) (cons 'a1202 . (address)) store ((church-force (cons 'a1203 . (address)) store church-second) (cons 'a1204 . (address)) store church-ret2)))) (cons 'a1205 . (address)) store ((church-force (cons 'a1206 . (address)) store church-first) (cons 'a1207 . (address)) store church-ret2)))) (cons 'a1208 . (address)) store ((church-force (cons 'a1209 . (address)) store church-apply) (cons 'a1210 . (address)) store church-counterfactual-update ((church-force (cons 'a1211 . (address)) store church-append) (cons 'a1212 . (address)) store ((church-force (cons 'a1213 . (address)) store church-list) (cons 'a1214 . (address)) store church-state church-nfqp) ((church-force (cons 'a1215 . (address)) store church-list) (cons 'a1216 . (address)) store ((church-force (cons 'a1217 . (address)) store church-pair) (cons 'a1218 . (address)) store church-chosen church-proposed-val))))))) (cons 'a1219 . (address)) store ((church-force (cons 'a1220 . (address)) store church-third) (cons 'a1221 . (address)) store church-ret1)))) (cons 'a1222 . (address)) store ((church-force (cons 'a1223 . (address)) store church-second) (cons 'a1224 . (address)) store church-ret1)))) (cons 'a1225 . (address)) store ((church-force (cons 'a1226 . (address)) store church-first) (cons 'a1227 . (address)) store church-ret1)))) (cons 'a1228 . (address)) store ((church-force (cons 'a1229 . (address)) store ((church-force (cons 'a1230 . (address)) store church-xrp-draw-proposer) (cons 'a1231 . (address)) store church-chosen)) (cons 'a1232 . (address)) store church-state)))) (cons 'a1233 . (address)) store ((church-force (cons 'a1234 . (address)) store church-addbox-draw-item) (cons 'a1235 . (address)) store church-xrp-draws)))) (church-trivial-proposal (lambda (address store church-state) ((church-force (cons 'a1236 . (address)) store church-list) (cons 'a1237 . (address)) store 0.0 church-state))) (church-rejection-initializer (lambda (address store church-normal-form-proc) ((church-force (cons 'a1238 . (address)) store (lambda (address store church-init-state) ((church-force (cons 'a1239 . (address)) store (lambda (address store church-proposal-state) (if (church-force (cons 'a1240 . (address)) store ((church-force (cons 'a1241 . (address)) store church-=) (cons 'a1242 . (address)) store -inf.0 ((church-force (cons 'a1243 . (address)) store church-mcmc-state->score) (cons 'a1244 . (address)) store church-proposal-state))) ((church-force (cons 'a1245 . (address)) store church-rejection-initializer) (cons 'a1246 . (address)) store church-normal-form-proc) ((church-force (cons 'a1247 . (address)) store (lambda (address store) church-proposal-state)) (cons 'a1248 . (address)) store)))) (cons 'a1249 . (address)) store ((church-force (cons 'a1250 . (address)) store church-first) (cons 'a1251 . (address)) store ((church-force (cons 'a1252 . (address)) store church-counterfactual-update) (cons 'a1253 . (address)) store church-init-state church-normal-form-proc))))) (cons 'a1254 . (address)) store ((church-force (cons 'a1255 . (address)) store church-make-initial-mcmc-state) (cons 'a1256 . (address)) store)))) (church-rejection-addressed-initializer (lambda (address store church-normal-form-proc church-start-address) ((church-force (cons 'a1257 . (address)) store (lambda (address store church-init-state) ((church-force (cons 'a1258 . (address)) store (lambda (address store church-proposal-state) (if (church-force (cons 'a1259 . (address)) store ((church-force (cons 'a1260 . (address)) store church-=) (cons 'a1261 . (address)) store -inf.0 ((church-force (cons 'a1262 . (address)) store church-mcmc-state->score) (cons 'a1263 . (address)) store church-proposal-state))) ((church-force (cons 'a1264 . (address)) store church-rejection-addressed-initializer) (cons 'a1265 . (address)) store church-normal-form-proc church-start-address) church-proposal-state))) (cons 'a1266 . (address)) store ((church-force (cons 'a1267 . (address)) store church-first) (cons 'a1268 . (address)) store ((church-force (cons 'a1269 . (address)) store church-counterfactual-update) (cons 'a1270 . (address)) store church-init-state church-normal-form-proc))))) (cons 'a1271 . (address)) store ((church-force (cons 'a1272 . (address)) store church-make-addressed-initial-mcmc-state) (cons 'a1273 . (address)) store church-start-address)))) (church-expr-initializer (lambda (address store church-normal-form-proc church-expr) ((church-force (cons 'a1274 . (address)) store (lambda (address store church-random-state) ((church-force (cons 'a1275 . (address)) store (lambda (address store church-fixed-val-state) ((church-force (cons 'a1276 . (address)) store (lambda (address store church-with-proposer-calls) ((church-force (cons 'a1277 . (address)) store (lambda (address store church-modified-proposer-calls) ((church-force (cons 'a1278 . (address)) store (lambda (address store church-init-state) church-init-state)) (cons 'a1279 . (address)) store ((church-force (cons 'a1280 . (address)) store church-second) (cons 'a1281 . (address)) store ((church-force (cons 'a1282 . (address)) store church-run-with-proposer) (cons 'a1283 . (address)) store church-modified-proposer-calls church-fixed-val-state church-normal-form-proc))))) (cons 'a1284 . (address)) store ((church-force (cons 'a1285 . (address)) store church-initializer-proposer-calls) (cons 'a1286 . (address)) store church-with-proposer-calls church-expr)))) (cons 'a1287 . (address)) store ((church-force (cons 'a1288 . (address)) store church-mcmc-state->with-proposer-calls) (cons 'a1289 . (address)) store church-fixed-val-state)))) (cons 'a1290 . (address)) store ((church-force (cons 'a1291 . (address)) store church-make-mcmc-state) (cons 'a1292 . (address)) store ((church-force (cons 'a1293 . (address)) store church-mcmc-state->store) (cons 'a1294 . (address)) store church-random-state) ((church-force (cons 'a1295 . (address)) store church-pair) (cons 'a1296 . (address)) store #t (lambda (address store) church-expr)) ((church-force (cons 'a1297 . (address)) store church-mcmc-state->address) (cons 'a1298 . (address)) store church-random-state))))) (cons 'a1299 . (address)) store ((church-force (cons 'a1300 . (address)) store church-first) (cons 'a1301 . (address)) store ((church-force (cons 'a1302 . (address)) store church-counterfactual-update) (cons 'a1303 . (address)) store ((church-force (cons 'a1304 . (address)) store church-make-initial-mcmc-state) (cons 'a1305 . (address)) store) church-normal-form-proc))))) (church-initializer-proposer-calls (lambda (address store church-with-proposer-calls church-expr) ((church-force (cons 'a1306 . (address)) store (lambda (address store church-first-entry) ((church-force (cons 'a1307 . (address)) store (lambda (address store church-address) ((church-force (cons 'a1308 . (address)) store (lambda (address store church-call) ((church-force (cons 'a1309 . (address)) store (lambda (address store church-new-call) ((church-force (cons 'a1310 . (address)) store (lambda (address store church-new-proposer-calls) church-new-proposer-calls)) (cons 'a1311 . (address)) store ((church-force (cons 'a1312 . (address)) store church-add-into-addbox) (cons 'a1313 . (address)) store ((church-force (cons 'a1314 . (address)) store church-make-addbox) (cons 'a1315 . (address)) store) church-address church-new-call)))) (cons 'a1316 . (address)) store ((church-force (cons 'a1317 . (address)) store church-make-with-proposer-call) (cons 'a1318 . (address)) store ((church-force (cons 'a1319 . (address)) store church-with-proposer-call-address) (cons 'a1320 . (address)) store church-call) ((church-force (cons 'a1321 . (address)) store church-list->lazy-list) (cons 'a1322 . (address)) store church-expr) ((church-force (cons 'a1323 . (address)) store church-with-proposer-call-proposer) (cons 'a1324 . (address)) store church-call) ((church-force (cons 'a1325 . (address)) store church-with-proposer-call-proc) (cons 'a1326 . (address)) store church-call))))) (cons 'a1327 . (address)) store ((church-force (cons 'a1328 . (address)) store church-rest) (cons 'a1329 . (address)) store church-first-entry)))) (cons 'a1330 . (address)) store ((church-force (cons 'a1331 . (address)) store church-first) (cons 'a1332 . (address)) store church-first-entry)))) (cons 'a1333 . (address)) store ((church-force (cons 'a1334 . (address)) store church-first) (cons 'a1335 . (address)) store ((church-force (cons 'a1336 . (address)) store church-addbox->alist) (cons 'a1337 . (address)) store church-with-proposer-calls))))) (church-verbose-init #f) (church-annealing-initializer (lambda (address store church-rej-steps church-temps:low->high church-temps->nfqp) ((church-force (cons 'a1338 . (address)) store (lambda (address store church-temps:high->low) ((church-force (cons 'a1339 . (address)) store (lambda (address store church-normal-form-proc) ((church-force (cons 'a1340 . (address)) store (lambda (address store church-initial-state) (letrec ((church-next-temp (lambda (address store church-temps church-mcmc-state) (if (church-force (cons 'a1341 . (address)) store ((church-force (cons 'a1342 . (address)) store church-=) (cons 'a1343 . (address)) store -inf.0 ((church-force (cons 'a1344 . (address)) store church-mcmc-state->score) (cons 'a1345 . (address)) store church-mcmc-state))) (begin (church-force (cons 'a1346 . (address)) store (if (church-force (cons 'a1347 . (address)) store church-verbose-init) (begin ((church-force (cons 'a1348 . (address)) store church-display) (cons 'a1349 . (address)) store "annealing-initializer: failed, restarting at top ...\n")) '(void))) ((church-force (cons 'a1350 . (address)) store church-annealing-initializer) (cons 'a1351 . (address)) store church-rej-steps church-temps:low->high church-temps->nfqp)) (if (church-force (cons 'a1352 . (address)) store ((church-force (cons 'a1353 . (address)) store church-null?) (cons 'a1354 . (address)) store church-temps)) (begin (church-force (cons 'a1355 . (address)) store (if (church-force (cons 'a1356 . (address)) store church-verbose-init) (begin ((church-force (cons 'a1357 . (address)) store church-display) (cons 'a1358 . (address)) store "annealing-initializer: succeeded!\n")) '(void))) church-mcmc-state) (begin (church-force (cons 'a1359 . (address)) store (if (church-force (cons 'a1360 . (address)) store church-verbose-init) (begin ((church-force (cons 'a1361 . (address)) store church-for-each) (cons 'a1362 . (address)) store church-display ((church-force (cons 'a1363 . (address)) store church-list) (cons 'a1364 . (address)) store "annealing-initializer:\n" " temps remaining: " ((church-force (cons 'a1365 . (address)) store church-length) (cons 'a1366 . (address)) store church-temps) "\n current temp: " ((church-force (cons 'a1367 . (address)) store church-first) (cons 'a1368 . (address)) store church-temps) "\n current val: " ((church-force (cons 'a1369 . (address)) store church-mcmc-state->query-value) (cons 'a1370 . (address)) store church-mcmc-state) "\n"))) '(void))) ((church-force (cons 'a1371 . (address)) store (lambda (address store church-nfqp) ((church-force (cons 'a1372 . (address)) store (lambda (address store church-rescored-state) ((church-force (cons 'a1373 . (address)) store (lambda (address store church-rej-state) ((church-force (cons 'a1374 . (address)) store church-next-temp) (cons 'a1375 . (address)) store ((church-force (cons 'a1376 . (address)) store church-rest) (cons 'a1377 . (address)) store church-temps) church-rej-state))) (cons 'a1378 . (address)) store ((church-force (cons 'a1379 . (address)) store ((church-force (cons 'a1380 . (address)) store church-basic-repeat-kernel) (cons 'a1381 . (address)) store church-rej-steps church-nfqp)) (cons 'a1382 . (address)) store church-rescored-state)))) (cons 'a1383 . (address)) store ((church-force (cons 'a1384 . (address)) store church-first) (cons 'a1385 . (address)) store ((church-force (cons 'a1386 . (address)) store church-counterfactual-update) (cons 'a1387 . (address)) store church-mcmc-state church-nfqp))))) (cons 'a1388 . (address)) store ((church-force (cons 'a1389 . (address)) store church-apply) (cons 'a1390 . (address)) store church-temps->nfqp ((church-force (cons 'a1391 . (address)) store church-first) (cons 'a1392 . (address)) store church-temps))))))))) ((church-force (cons 'a1393 . (address)) store church-next-temp) (cons 'a1394 . (address)) store ((church-force (cons 'a1395 . (address)) store church-rest) (cons 'a1396 . (address)) store church-temps:high->low) church-initial-state)))) (cons 'a1397 . (address)) store (begin (church-force (cons 'a1398 . (address)) store ((church-force (cons 'a1399 . (address)) store church-reset-store-xrp-draws) (cons 'a1400 . (address)) store)) ((church-force (cons 'a1401 . (address)) store church-rejection-initializer) (cons 'a1402 . (address)) store church-normal-form-proc))))) (cons 'a1403 . (address)) store ((church-force (cons 'a1404 . (address)) store church-apply) (cons 'a1405 . (address)) store church-temps->nfqp ((church-force (cons 'a1406 . (address)) store church-first) (cons 'a1407 . (address)) store church-temps:high->low))))) (cons 'a1408 . (address)) store ((church-force (cons 'a1409 . (address)) store church-reverse) (cons 'a1410 . (address)) store church-temps:low->high)))) (church-make-mh-kernel (lambda (address store church-proposal-distribution church-scorer) (lambda (address store church-state) ((church-force (cons 'a1411 . (address)) store (lambda (address store church-ret) ((church-force (cons 'a1412 . (address)) store (lambda (address store church-bw/fw) ((church-force (cons 'a1413 . (address)) store (lambda (address store church-proposal-state) ((church-force (cons 'a1414 . (address)) store (lambda (address store church-old-p) ((church-force (cons 'a1415 . (address)) store (lambda (address store church-new-p) ((church-force (cons 'a1416 . (address)) store (lambda (address store church-accept) ((church-force (cons 'a1417 . (address)) store (lambda (address store church-dummy) (if (church-force (cons 'a1418 . (address)) store church-accept) church-proposal-state church-state))) (cons 'a1419 . (address)) store ((church-force (cons 'a1420 . (address)) store church-reset-store-xrp-draws) (cons 'a1421 . (address)) store)))) (cons 'a1422 . (address)) store ((church-force (cons 'a1423 . (address)) store church-log-flip) (cons 'a1424 . (address)) store ((church-force (cons 'a1425 . (address)) store church-min) (cons 'a1426 . (address)) store 0.0 ((church-force (cons 'a1427 . (address)) store church-+) (cons 'a1428 . (address)) store ((church-force (cons 'a1429 . (address)) store church--) (cons 'a1430 . (address)) store church-new-p church-old-p) church-bw/fw)))))) (cons 'a1431 . (address)) store ((church-force (cons 'a1432 . (address)) store church-scorer) (cons 'a1433 . (address)) store church-proposal-state)))) (cons 'a1434 . (address)) store ((church-force (cons 'a1435 . (address)) store church-scorer) (cons 'a1436 . (address)) store church-state)))) (cons 'a1437 . (address)) store ((church-force (cons 'a1438 . (address)) store church-second) (cons 'a1439 . (address)) store church-ret)))) (cons 'a1440 . (address)) store ((church-force (cons 'a1441 . (address)) store church-first) (cons 'a1442 . (address)) store church-ret)))) (cons 'a1443 . (address)) store ((church-force (cons 'a1444 . (address)) store church-proposal-distribution) (cons 'a1445 . (address)) store church-state))))) (church-cycle-kernel (lambda (address store . church-kernels) (lambda (address store church-state) ((church-force (cons 'a1446 . (address)) store church-fold) (cons 'a1447 . (address)) store (lambda (address store church-k church-s) ((church-force (cons 'a1448 . (address)) store church-k) (cons 'a1449 . (address)) store church-s)) church-state church-kernels)))) (church-repeat-kernel (lambda (address store church-steps church-kernel) ((church-force (cons 'a1450 . (address)) store church-apply) (cons 'a1451 . (address)) store church-cycle-kernel ((church-force (cons 'a1452 . (address)) store church-make-list) (cons 'a1453 . (address)) store church-steps church-kernel)))) (church-basic-repeat-kernel (lambda (address store church-steps church-nfqp) ((church-force (cons 'a1454 . (address)) store church-repeat-kernel) (cons 'a1455 . (address)) store church-steps ((church-force (cons 'a1456 . (address)) store church-make-mh-kernel) (cons 'a1457 . (address)) store (lambda (address store church-state) ((church-force (cons 'a1458 . (address)) store church-basic-proposal-distribution) (cons 'a1459 . (address)) store church-state church-nfqp)) church-mcmc-state->score)))) (church-inference-timing #f) (church-repeated-mcmc-query-core (lambda (address store church-initializer church-kernel church-num-samples) ((church-force (cons 'a1460 . (address)) store (lambda (address store church-init-state) (begin (church-force (cons 'a1461 . (address)) store (if (church-force (cons 'a1462 . (address)) store church-inference-timing) (begin (church-force (cons 'a1463 . (address)) store ((church-force (cons 'a1464 . (address)) store church-display) (cons 'a1465 . (address)) store "initialized: ")) (church-force (cons 'a1466 . (address)) store ((church-force (cons 'a1467 . (address)) store church-display) (cons 'a1468 . (address)) store ((church-force (cons 'a1469 . (address)) store church-current-date) (cons 'a1470 . (address)) store))) ((church-force (cons 'a1471 . (address)) store church-display) (cons 'a1472 . (address)) store "\n")) '(void))) ((church-force (cons 'a1473 . (address)) store (lambda (address store church-ret) (begin (church-force (cons 'a1474 . (address)) store (if (church-force (cons 'a1475 . (address)) store church-inference-timing) (begin (church-force (cons 'a1476 . (address)) store ((church-force (cons 'a1477 . (address)) store church-display) (cons 'a1478 . (address)) store "done: ")) (church-force (cons 'a1479 . (address)) store ((church-force (cons 'a1480 . (address)) store church-display) (cons 'a1481 . (address)) store ((church-force (cons 'a1482 . (address)) store church-current-date) (cons 'a1483 . (address)) store))) ((church-force (cons 'a1484 . (address)) store church-display) (cons 'a1485 . (address)) store "\n")) '(void))) church-ret))) (cons 'a1486 . (address)) store ((church-force (cons 'a1487 . (address)) store church-mcmc-loop) (cons 'a1488 . (address)) store church-kernel church-init-state church-num-samples '()))))) (cons 'a1489 . (address)) store ((church-force (cons 'a1490 . (address)) store church-reset-with-proposer-calls) (cons 'a1491 . (address)) store ((church-force (cons 'a1492 . (address)) store church-initializer) (cons 'a1493 . (address)) store))))) (church-mcmc-loop (lambda (address store church-kernel church-state church-samples-left church-samples) (if (church-force (cons 'a1494 . (address)) store ((church-force (cons 'a1495 . (address)) store church-<) (cons 'a1496 . (address)) store church-samples-left 1)) ((church-force (cons 'a1497 . (address)) store church-reverse) (cons 'a1498 . (address)) store church-samples) ((church-force (cons 'a1499 . (address)) store church-mcmc-loop) (cons 'a1500 . (address)) store church-kernel ((church-force (cons 'a1501 . (address)) store church-kernel) (cons 'a1502 . (address)) store church-state) ((church-force (cons 'a1503 . (address)) store church--) (cons 'a1504 . (address)) store church-samples-left 1) ((church-force (cons 'a1505 . (address)) store church-pair) (cons 'a1506 . (address)) store ((church-force (cons 'a1507 . (address)) store church-mcmc-state->query-value) (cons 'a1508 . (address)) store church-state) church-samples))))) (church-mh-query (lambda (address store church-samples church-lag church-normal-form-proc) ((church-force (cons 'a1509 . (address)) store church-repeated-mcmc-query-core) (cons 'a1510 . (address)) store (lambda (address store) ((church-force (cons 'a1511 . (address)) store church-rejection-initializer) (cons 'a1512 . (address)) store church-normal-form-proc)) ((church-force (cons 'a1513 . (address)) store church-basic-repeat-kernel) (cons 'a1514 . (address)) store church-lag church-normal-form-proc) church-samples))) (church-mh-expr-query (lambda (address store church-samples church-lag church-normal-form-proc church-expr) ((church-force (cons 'a1515 . (address)) store (lambda (address store church-db) ((church-force (cons 'a1516 . (address)) store church-repeated-mcmc-query-core) (cons 'a1517 . (address)) store (lambda (address store) ((church-force (cons 'a1518 . (address)) store church-expr-initializer) (cons 'a1519 . (address)) store church-normal-form-proc church-expr)) ((church-force (cons 'a1520 . (address)) store church-basic-repeat-kernel) (cons 'a1521 . (address)) store church-lag church-normal-form-proc) church-samples))) (cons 'a1522 . (address)) store ((church-force (cons 'a1523 . (address)) store church-pretty-print) (cons 'a1524 . (address)) store ((church-force (cons 'a1525 . (address)) store church-list) (cons 'a1526 . (address)) store "in mh-expr-query" church-samples church-lag church-expr))))) (church-mh-query/annealed-init (lambda (address store church-temps church-samples church-lag church-rej-steps church-temps->nfqp) ((church-force (cons 'a1527 . (address)) store (lambda (address store church-normal-form-proc) ((church-force (cons 'a1528 . (address)) store church-repeated-mcmc-query-core) (cons 'a1529 . (address)) store (lambda (address store) ((church-force (cons 'a1530 . (address)) store church-annealing-initializer) (cons 'a1531 . (address)) store church-rej-steps church-temps church-temps->nfqp)) ((church-force (cons 'a1532 . (address)) store church-basic-repeat-kernel) (cons 'a1533 . (address)) store church-lag church-normal-form-proc) church-samples))) (cons 'a1534 . (address)) store ((church-force (cons 'a1535 . (address)) store church-apply) (cons 'a1536 . (address)) store church-temps->nfqp ((church-force (cons 'a1537 . (address)) store church-first) (cons 'a1538 . (address)) store church-temps))))) (church-psmc-query (lambda (address store church-temps church-popsize church-lag church-temps->nfqp) ((church-force (cons 'a1539 . (address)) store church-map) (cons 'a1540 . (address)) store church-mcmc-state->query-value ((church-force (cons 'a1541 . (address)) store church-smc-core) (cons 'a1542 . (address)) store church-temps church-popsize church-lag church-temps->nfqp)))) (church-smc-core (lambda (address store church-temps church-popsize church-lag church-temps->nfqp . church-start-address) ((church-force (cons 'a1543 . (address)) store (lambda (address store church-original-temps) (letrec ((church-smc (lambda (address store church-temps church-population church-weights) ((church-force (cons 'a1544 . (address)) store (lambda (address store church-rets) ((church-force (cons 'a1545 . (address)) store (lambda (address store church-new-population) ((church-force (cons 'a1546 . (address)) store (lambda (address store church-cd-bw/fw) ((church-force (cons 'a1547 . (address)) store (lambda (address store church-weights) ((church-force (cons 'a1548 . (address)) store (lambda (address store church-resample-distribution) ((church-force (cons 'a1549 . (address)) store (lambda (address store church-collapse?) (if (church-force (cons 'a1550 . (address)) store church-collapse?) ((church-force (cons 'a1551 . (address)) store (lambda (address store) (if (church-force (cons 'a1552 . (address)) store ((church-force (cons 'a1553 . (address)) store church-null?) (cons 'a1554 . (address)) store church-start-address)) '() ((church-force (cons 'a1555 . (address)) store church-smc-core) (cons 'a1556 . (address)) store church-original-temps ((church-force (cons 'a1557 . (address)) store church-increase-population) (cons 'a1558 . (address)) store church-popsize) church-lag church-temps->nfqp ((church-force (cons 'a1559 . (address)) store church-first) (cons 'a1560 . (address)) store church-start-address))))) (cons 'a1561 . (address)) store) ((church-force (cons 'a1562 . (address)) store (lambda (address store church-new2-population) ((church-force (cons 'a1563 . (address)) store (lambda (address store church-weights) ((church-force (cons 'a1564 . (address)) store (lambda (address store church-kernel) ((church-force (cons 'a1565 . (address)) store (lambda (address store church-new3-population) (begin (if (church-force (cons 'a1566 . (address)) store ((church-force (cons 'a1567 . (address)) store church-null?) (cons 'a1568 . (address)) store ((church-force (cons 'a1569 . (address)) store church-rest) (cons 'a1570 . (address)) store church-temps))) church-new3-population ((church-force (cons 'a1571 . (address)) store church-smc) (cons 'a1572 . (address)) store ((church-force (cons 'a1573 . (address)) store church-rest) (cons 'a1574 . (address)) store church-temps) church-new3-population church-weights))))) (cons 'a1575 . (address)) store ((church-force (cons 'a1576 . (address)) store church-map) (cons 'a1577 . (address)) store church-kernel church-new2-population)))) (cons 'a1578 . (address)) store ((church-force (cons 'a1579 . (address)) store church-repeat-kernel) (cons 'a1580 . (address)) store church-lag ((church-force (cons 'a1581 . (address)) store church-make-mh-kernel) (cons 'a1582 . (address)) store (lambda (address store church-state) ((church-force (cons 'a1583 . (address)) store church-basic-proposal-distribution) (cons 'a1584 . (address)) store church-state ((church-force (cons 'a1585 . (address)) store church-apply) (cons 'a1586 . (address)) store church-temps->nfqp ((church-force (cons 'a1587 . (address)) store church-first) (cons 'a1588 . (address)) store church-temps)))) church-mcmc-state->score))))) (cons 'a1589 . (address)) store ((church-force (cons 'a1590 . (address)) store church-make-list) (cons 'a1591 . (address)) store church-popsize 0)))) (cons 'a1592 . (address)) store ((church-force (cons 'a1593 . (address)) store church-repeat) (cons 'a1594 . (address)) store church-popsize (lambda (address store) (begin (church-force (cons 'a1595 . (address)) store ((church-force (cons 'a1596 . (address)) store church-reset-store-xrp-draws) (cons 'a1597 . (address)) store)) ((church-force (cons 'a1598 . (address)) store church-multinomial) (cons 'a1599 . (address)) store church-new-population church-resample-distribution)))))))) (cons 'a1600 . (address)) store ((church-force (cons 'a1601 . (address)) store church-nan?) (cons 'a1602 . (address)) store ((church-force (cons 'a1603 . (address)) store church-first) (cons 'a1604 . (address)) store church-resample-distribution))))) (cons 'a1605 . (address)) store ((church-force (cons 'a1606 . (address)) store church-map) (cons 'a1607 . (address)) store church-exp ((church-force (cons 'a1608 . (address)) store church-log-normalize) (cons 'a1609 . (address)) store church-weights))))) (cons 'a1610 . (address)) store ((church-force (cons 'a1611 . (address)) store church-map) (cons 'a1612 . (address)) store (lambda (address store church-old-weight church-old-state church-new-state church-cd-bw/fw) ((church-force (cons 'a1613 . (address)) store church-+) (cons 'a1614 . (address)) store church-old-weight ((church-force (cons 'a1615 . (address)) store church--) (cons 'a1616 . (address)) store ((church-force (cons 'a1617 . (address)) store church-mcmc-state->score) (cons 'a1618 . (address)) store church-new-state) ((church-force (cons 'a1619 . (address)) store church-mcmc-state->score) (cons 'a1620 . (address)) store church-old-state)) church-cd-bw/fw)) church-weights church-population church-new-population church-cd-bw/fw)))) (cons 'a1621 . (address)) store ((church-force (cons 'a1622 . (address)) store church-map) (cons 'a1623 . (address)) store church-second church-rets)))) (cons 'a1624 . (address)) store ((church-force (cons 'a1625 . (address)) store church-map) (cons 'a1626 . (address)) store church-first church-rets)))) (cons 'a1627 . (address)) store ((church-force (cons 'a1628 . (address)) store church-map) (cons 'a1629 . (address)) store (lambda (address store church-state) ((church-force (cons 'a1630 . (address)) store church-counterfactual-update) (cons 'a1631 . (address)) store church-state ((church-force (cons 'a1632 . (address)) store church-apply) (cons 'a1633 . (address)) store church-temps->nfqp ((church-force (cons 'a1634 . (address)) store church-first) (cons 'a1635 . (address)) store church-temps)))) church-population))))) ((church-force (cons 'a1636 . (address)) store church-smc) (cons 'a1637 . (address)) store church-temps ((church-force (cons 'a1638 . (address)) store church-repeat) (cons 'a1639 . (address)) store church-popsize (lambda (address store) (begin (church-force (cons 'a1640 . (address)) store ((church-force (cons 'a1641 . (address)) store church-reset-store-xrp-draws) (cons 'a1642 . (address)) store)) (if (church-force (cons 'a1643 . (address)) store ((church-force (cons 'a1644 . (address)) store church-null?) (cons 'a1645 . (address)) store church-start-address)) ((church-force (cons 'a1646 . (address)) store church-reset-with-proposer-calls) (cons 'a1647 . (address)) store ((church-force (cons 'a1648 . (address)) store church-rejection-initializer) (cons 'a1649 . (address)) store ((church-force (cons 'a1650 . (address)) store church-apply) (cons 'a1651 . (address)) store church-temps->nfqp ((church-force (cons 'a1652 . (address)) store church-first) (cons 'a1653 . (address)) store church-temps)))) ((church-force (cons 'a1654 . (address)) store church-reset-with-proposer-calls) (cons 'a1655 . (address)) store ((church-force (cons 'a1656 . (address)) store church-rejection-addressed-initializer) (cons 'a1657 . (address)) store ((church-force (cons 'a1658 . (address)) store church-apply) (cons 'a1659 . (address)) store church-temps->nfqp ((church-force (cons 'a1660 . (address)) store church-first) (cons 'a1661 . (address)) store church-temps)) ((church-force (cons 'a1662 . (address)) store church-first) (cons 'a1663 . (address)) store church-start-address))))))) ((church-force (cons 'a1664 . (address)) store church-make-list) (cons 'a1665 . (address)) store church-popsize 0))))) (cons 'a1666 . (address)) store church-temps))) (church-increase-population (lambda (address store church-old-pop-size) ((church-force (cons 'a1667 . (address)) store church-*) (cons 'a1668 . (address)) store church-old-pop-size 2))) (church-smc-eval-obs-marginalize (lambda (address store church-gen-sexpr church-popsize) ((church-force (cons 'a1669 . (address)) store church-make-stateless-xrp) (cons 'a1670 . (address)) store 'marginalized-eq-obs-gen-sexpr (lambda (address store church-obs) ((church-force (cons 'a1671 . (address)) store church-lazy-equal?) (cons 'a1672 . (address)) store ((church-force (cons 'a1673 . (address)) store church-gen-sexpr) (cons 'a1674 . (address)) store) church-obs)) (lambda (address store church-args church-val) (if (church-force (cons 'a1675 . (address)) store church-val) ((church-force (cons 'a1676 . (address)) store (lambda (address store church-samples) ((church-force (cons 'a1677 . (address)) store (lambda (address store church-samples) ((church-force (cons 'a1678 . (address)) store (lambda (address store church-scores) ((church-force (cons 'a1679 . (address)) store (lambda (address store church-score) church-score)) (cons 'a1680 . (address)) store (if (church-force (cons 'a1681 . (address)) store ((church-force (cons 'a1682 . (address)) store church-null?) (cons 'a1683 . (address)) store church-scores)) -inf.0 ((church-force (cons 'a1684 . (address)) store church-apply) (cons 'a1685 . (address)) store church-log-sum-exp church-scores))))) (cons 'a1686 . (address)) store ((church-force (cons 'a1687 . (address)) store church-map) (cons 'a1688 . (address)) store church-mcmc-state->score church-samples)))) (cons 'a1689 . (address)) store ((church-force (cons 'a1690 . (address)) store church-fold) (cons 'a1691 . (address)) store (lambda (address store church-s church-a) (if (church-force (cons 'a1692 . (address)) store ((church-force (cons 'a1693 . (address)) store church-member) (cons 'a1694 . (address)) store ((church-force (cons 'a1695 . (address)) store church-mcmc-state->addrval) (cons 'a1696 . (address)) store church-s) ((church-force (cons 'a1697 . (address)) store church-map) (cons 'a1698 . (address)) store church-mcmc-state->addrval church-a))) church-a ((church-force (cons 'a1699 . (address)) store church-pair) (cons 'a1700 . (address)) store church-s church-a))) '() church-samples)))) (cons 'a1701 . (address)) store ((church-force (cons 'a1702 . (address)) store church-smc-core) (cons 'a1703 . (address)) store ((church-force (cons 'a1704 . (address)) store church-map) (cons 'a1705 . (address)) store church-list ((church-force (cons 'a1706 . (address)) store church-iota) (cons 'a1707 . (address)) store ((church-force (cons 'a1708 . (address)) store church-+) (cons 'a1709 . (address)) store 1 ((church-force (cons 'a1710 . (address)) store church-lazy-list-size) (cons 'a1711 . (address)) store ((church-force (cons 'a1712 . (address)) store church-first) (cons 'a1713 . (address)) store church-args))))) church-popsize 0 (lambda (address store church-depth) (lambda (address store) ((church-force (cons 'a1714 . (address)) store (lambda (address store church-s) ((church-force (cons 'a1715 . (address)) store church-pair) (cons 'a1716 . (address)) store ((church-force (cons 'a1717 . (address)) store church-lazy-equal?) (cons 'a1718 . (address)) store church-s ((church-force (cons 'a1719 . (address)) store church-first) (cons 'a1720 . (address)) store church-args) church-depth) (lambda (address store) ((church-force (cons 'a1721 . (address)) store church-first) (cons 'a1722 . (address)) store ((church-force (cons 'a1723 . (address)) store church-lazy-list->list) (cons 'a1724 . (address)) store church-s church-depth)))))) (cons 'a1725 . (address)) store ((church-force (cons 'a1726 . (address)) store church-gen-sexpr) (cons 'a1727 . (address)) store)))))) -inf.0))))) (church-mcmc-state->addrval (lambda (address store church-s) ((church-force (cons 'a1728 . (address)) store church-map) (cons 'a1729 . (address)) store (lambda (address store church-d) ((church-force (cons 'a1730 . (address)) store church-pair) (cons 'a1731 . (address)) store ((church-force (cons 'a1732 . (address)) store church-xrp-draw-address) (cons 'a1733 . (address)) store church-d) ((church-force (cons 'a1734 . (address)) store church-xrp-draw-value) (cons 'a1735 . (address)) store church-d))) ((church-force (cons 'a1736 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1737 . (address)) store church-s)))) (church-log-sum-exp (lambda (address store . church-log-vals) ((church-force (cons 'a1738 . (address)) store (lambda (address store church-max-log-val) (if (church-force (cons 'a1739 . (address)) store ((church-force (cons 'a1740 . (address)) store church-equal?) (cons 'a1741 . (address)) store church-max-log-val -inf.0)) -inf.0 ((church-force (cons 'a1742 . (address)) store church-+) (cons 'a1743 . (address)) store ((church-force (cons 'a1744 . (address)) store church-log) (cons 'a1745 . (address)) store ((church-force (cons 'a1746 . (address)) store church-exact->inexact) (cons 'a1747 . (address)) store ((church-force (cons 'a1748 . (address)) store church-sum) (cons 'a1749 . (address)) store ((church-force (cons 'a1750 . (address)) store church-map) (cons 'a1751 . (address)) store (lambda (address store church-val) ((church-force (cons 'a1752 . (address)) store church-exp) (cons 'a1753 . (address)) store ((church-force (cons 'a1754 . (address)) store church--) (cons 'a1755 . (address)) store church-val church-max-log-val))) church-log-vals)))) church-max-log-val)))) (cons 'a1756 . (address)) store ((church-force (cons 'a1757 . (address)) store church-apply) (cons 'a1758 . (address)) store church-max church-log-vals)))) (church-log-normalize (lambda (address store church-log-scores) ((church-force (cons 'a1759 . (address)) store (lambda (address store church-score-sum) ((church-force (cons 'a1760 . (address)) store church-map) (cons 'a1761 . (address)) store (lambda (address store church-score) ((church-force (cons 'a1762 . (address)) store church--) (cons 'a1763 . (address)) store church-score church-score-sum)) church-log-scores))) (cons 'a1764 . (address)) store ((church-force (cons 'a1765 . (address)) store church-apply) (cons 'a1766 . (address)) store church-log-sum-exp church-log-scores)))) (church-growth-noise 0.2) (church-label-noise 0.2) (church-labels '(a b)) (church-root '(a)) (church-node (lambda (address store church-item0 . church-items) (if (church-force (cons 'a1767 . (address)) store ((church-force (cons 'a1768 . (address)) store church-null?) (cons 'a1769 . (address)) store ((church-force (cons 'a1770 . (address)) store church-list) (cons 'a1771 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-items))))) ((church-force (cons 'a1772 . (address)) store church-list) (cons 'a1773 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1774 . (address)) store church-lazy-pair) (cons 'a1775 . (address)) store ((church-force (cons 'a1776 . (address)) store church-list) (cons 'a1777 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1778 . (address)) store church-noisy-label) (cons 'a1779 . (address)) store ((church-force (cons 'a1780 . (address)) store church-list) (cons 'a1781 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-item0))))))) ((church-force (cons 'a1782 . (address)) store church-list) (cons 'a1783 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) '()))))))) ((church-force (cons 'a1784 . (address)) store church-list) (cons 'a1785 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1786 . (address)) store church-lazy-pair) (cons 'a1787 . (address)) store ((church-force (cons 'a1788 . (address)) store church-list) (cons 'a1789 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1790 . (address)) store church-noisy-label) (cons 'a1791 . (address)) store ((church-force (cons 'a1792 . (address)) store church-list) (cons 'a1793 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-item0))))))) ((church-force (cons 'a1794 . (address)) store church-list) (cons 'a1795 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) (if (church-force (cons 'a1796 . (address)) store ((church-force (cons 'a1797 . (address)) store church-flip) (cons 'a1798 . (address)) store ((church-force (cons 'a1799 . (address)) store church-list) (cons 'a1800 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1801 . (address)) store church--) (cons 'a1802 . (address)) store ((church-force (cons 'a1803 . (address)) store church-list) (cons 'a1804 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 1))) ((church-force (cons 'a1805 . (address)) store church-list) (cons 'a1806 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-growth-noise))))))))) ((church-force (cons 'a1807 . (address)) store church-list) (cons 'a1808 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1809 . (address)) store church-apply) (cons 'a1810 . (address)) store ((church-force (cons 'a1811 . (address)) store church-list) (cons 'a1812 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-node))) ((church-force (cons 'a1813 . (address)) store church-list) (cons 'a1814 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-items))))))) ((church-force (cons 'a1815 . (address)) store church-list) (cons 'a1816 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) '())))))))))))))) (church-noisy-label (lambda (address store church-x) (if (church-force (cons 'a1817 . (address)) store ((church-force (cons 'a1818 . (address)) store church-symbol?) (cons 'a1819 . (address)) store ((church-force (cons 'a1820 . (address)) store church-list) (cons 'a1821 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-x))))) ((church-force (cons 'a1822 . (address)) store church-list) (cons 'a1823 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) (if (church-force (cons 'a1824 . (address)) store ((church-force (cons 'a1825 . (address)) store church-flip) (cons 'a1826 . (address)) store ((church-force (cons 'a1827 . (address)) store church-list) (cons 'a1828 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1829 . (address)) store church--) (cons 'a1830 . (address)) store ((church-force (cons 'a1831 . (address)) store church-list) (cons 'a1832 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 1))) ((church-force (cons 'a1833 . (address)) store church-list) (cons 'a1834 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-label-noise))))))))) ((church-force (cons 'a1835 . (address)) store church-list) (cons 'a1836 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-x))) ((church-force (cons 'a1837 . (address)) store church-list) (cons 'a1838 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) (if (church-force (cons 'a1839 . (address)) store ((church-force (cons 'a1840 . (address)) store church-equal?) (cons 'a1841 . (address)) store ((church-force (cons 'a1842 . (address)) store church-list) (cons 'a1843 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-x))) ((church-force (cons 'a1844 . (address)) store church-list) (cons 'a1845 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 'a))))) ((church-force (cons 'a1846 . (address)) store church-list) (cons 'a1847 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 'b))) ((church-force (cons 'a1848 . (address)) store church-list) (cons 'a1849 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 'a))))))))))) ((church-force (cons 'a1850 . (address)) store church-list) (cons 'a1851 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-x)))))) (church-time-it (lambda (address store church-proc . church-name) (lambda (address store . church-args) ((church-force (cons 'a1852 . (address)) store (lambda (address store church-start-time church-value church-end-time) (begin (church-force (cons 'a1853 . (address)) store ((church-force (cons 'a1854 . (address)) store church-for-each) (cons 'a1855 . (address)) store church-display ((church-force (cons 'a1856 . (address)) store church-list) (cons 'a1857 . (address)) store church-name " run-time:" ((church-force (cons 'a1858 . (address)) store church-time-second) (cons 'a1859 . (address)) store ((church-force (cons 'a1860 . (address)) store church-time-difference) (cons 'a1861 . (address)) store church-start-time church-end-time)) "\n"))) church-value))) (cons 'a1862 . (address)) store ((church-force (cons 'a1863 . (address)) store church-current-time) (cons 'a1864 . (address)) store) ((church-force (cons 'a1865 . (address)) store church-apply) (cons 'a1866 . (address)) store church-proc church-args) ((church-force (cons 'a1867 . (address)) store church-current-time) (cons 'a1868 . (address)) store))))) (church-evaluates?-test (lambda (address store church-name church-value) (begin ((church-force (cons 'a1869 . (address)) store church-for-each) (cons 'a1870 . (address)) store church-display ((church-force (cons 'a1871 . (address)) store church-list) (cons 'a1872 . (address)) store church-name " value:" church-value "...passed!"))))) (church-equal?-test (lambda (address store church-name church-test-val church-true-val) (begin (church-force (cons 'a1873 . (address)) store ((church-force (cons 'a1874 . (address)) store church-display) (cons 'a1875 . (address)) store "deterministic test: ")) (church-force (cons 'a1876 . (address)) store ((church-force (cons 'a1877 . (address)) store church-display) (cons 'a1878 . (address)) store church-name)) (if (church-force (cons 'a1879 . (address)) store ((church-force (cons 'a1880 . (address)) store church-not) (cons 'a1881 . (address)) store ((church-force (cons 'a1882 . (address)) store church-equal?) (cons 'a1883 . (address)) store church-test-val church-true-val))) ((church-force (cons 'a1884 . (address)) store church-for-each) (cons 'a1885 . (address)) store church-display ((church-force (cons 'a1886 . (address)) store church-list) (cons 'a1887 . (address)) store ".. failed! true value: " church-true-val ", test value: " church-test-val "\n")) ((church-force (cons 'a1888 . (address)) store church-display) (cons 'a1889 . (address)) store ".. passed.\n"))))) (church-timed-equal?-test ((church-force (cons 'a1890 . (address)) store church-time-it) (cons 'a1891 . (address)) store church-equal?-test)) (church-member?-test (lambda (address store church-name church-test-val church-set-of-true-vals) (begin (church-force (cons 'a1892 . (address)) store ((church-force (cons 'a1893 . (address)) store church-display) (cons 'a1894 . (address)) store "deterministic test: ")) (church-force (cons 'a1895 . (address)) store ((church-force (cons 'a1896 . (address)) store church-display) (cons 'a1897 . (address)) store church-name)) (if (church-force (cons 'a1898 . (address)) store ((church-force (cons 'a1899 . (address)) store church-not) (cons 'a1900 . (address)) store ((church-force (cons 'a1901 . (address)) store church-member) (cons 'a1902 . (address)) store church-test-val church-set-of-true-vals))) ((church-force (cons 'a1903 . (address)) store church-for-each) (cons 'a1904 . (address)) store church-display ((church-force (cons 'a1905 . (address)) store church-list) (cons 'a1906 . (address)) store " true values: " church-set-of-true-vals ", test value: " church-test-val ".. failed!\n")) ((church-force (cons 'a1907 . (address)) store church-for-each) (cons 'a1908 . (address)) store church-display ((church-force (cons 'a1909 . (address)) store church-list) (cons 'a1910 . (address)) store " true values: " church-set-of-true-vals ", test-value: " church-test-val ".. passed.\n")))))) (church-with-proposer-test (lambda (address store church-distribution church-with-proposer-distribution church-expectation-fn church-true-expectation church-tolerance church-name) (begin (church-force (cons 'a1911 . (address)) store ((church-force (cons 'a1912 . (address)) store church-pretty-print) (cons 'a1913 . (address)) store church-name)) (church-force (cons 'a1914 . (address)) store ((church-force (cons 'a1915 . (address)) store church-display) (cons 'a1916 . (address)) store "with-proposer NOT used....")) (church-force (cons 'a1917 . (address)) store ((church-force (cons 'a1918 . (address)) store church-check-test) (cons 'a1919 . (address)) store church-distribution church-expectation-fn church-true-expectation church-tolerance church-name)) (church-force (cons 'a1920 . (address)) store ((church-force (cons 'a1921 . (address)) store church-display) (cons 'a1922 . (address)) store "with-proposer used....")) ((church-force (cons 'a1923 . (address)) store church-check-test) (cons 'a1924 . (address)) store church-with-proposer-distribution church-expectation-fn church-true-expectation church-tolerance church-name)))) (church-check-test (lambda (address store church-info church-expectation-fn church-true-expectation church-tolerance church-name) (begin ((church-force (cons 'a1925 . (address)) store (lambda (address store church-estimates) ((church-force (cons 'a1926 . (address)) store (lambda (address store church-errors) ((church-force (cons 'a1927 . (address)) store (lambda (address store church-mean-abs-error) (if (church-force (cons 'a1928 . (address)) store ((church-force (cons 'a1929 . (address)) store church->) (cons 'a1930 . (address)) store church-mean-abs-error church-tolerance)) ((church-force (cons 'a1931 . (address)) store church-for-each) (cons 'a1932 . (address)) store church-display ((church-force (cons 'a1933 . (address)) store church-list) (cons 'a1934 . (address)) store church-name ".. failed! true expectation: " church-true-expectation ", test mean: " ((church-force (cons 'a1935 . (address)) store church-*) (cons 'a1936 . (address)) store ((church-force (cons 'a1937 . (address)) store church-mean) (cons 'a1938 . (address)) store church-estimates) 1.0) "\n")) ((church-force (cons 'a1939 . (address)) store church-for-each) (cons 'a1940 . (address)) store church-display ((church-force (cons 'a1941 . (address)) store church-list) (cons 'a1942 . (address)) store church-name " passed. true expectation: " church-true-expectation ", test mean: " ((church-force (cons 'a1943 . (address)) store church-*) (cons 'a1944 . (address)) store ((church-force (cons 'a1945 . (address)) store church-mean) (cons 'a1946 . (address)) store church-estimates) 1.0) "\n"))))) (cons 'a1947 . (address)) store ((church-force (cons 'a1948 . (address)) store church-mean) (cons 'a1949 . (address)) store church-errors)))) (cons 'a1950 . (address)) store ((church-force (cons 'a1951 . (address)) store church-map) (cons 'a1952 . (address)) store (lambda (address store church-estimate) ((church-force (cons 'a1953 . (address)) store church-abs) (cons 'a1954 . (address)) store ((church-force (cons 'a1955 . (address)) store church--) (cons 'a1956 . (address)) store church-estimate church-true-expectation))) church-estimates)))) (cons 'a1957 . (address)) store ((church-force (cons 'a1958 . (address)) store church-map) (cons 'a1959 . (address)) store (lambda (address store church-run) ((church-force (cons 'a1960 . (address)) store church-mean) (cons 'a1961 . (address)) store ((church-force (cons 'a1962 . (address)) store church-map) (cons 'a1963 . (address)) store church-expectation-fn church-run))) church-info))))) (church-node-eval (lambda (address store church-exp church-env) ((church-force (cons 'a1964 . (address)) store ((church-force (cons 'a1965 . (address)) store church-analyze) (cons 'a1966 . (address)) store church-exp)) (cons 'a1967 . (address)) store church-env))) (church-analyze (lambda (address store church-exp) (if (church-force (cons 'a1968 . (address)) store ((church-force (cons 'a1969 . (address)) store church-quoted?) (cons 'a1970 . (address)) store church-exp)) ((church-force (cons 'a1971 . (address)) store church-analyze-quoted) (cons 'a1972 . (address)) store church-exp) (if (church-force (cons 'a1973 . (address)) store ((church-force (cons 'a1974 . (address)) store church-application?) (cons 'a1975 . (address)) store church-exp)) ((church-force (cons 'a1976 . (address)) store church-analyze-application) (cons 'a1977 . (address)) store church-exp) (lambda (address store church-env) "analysis lost"))))) (church-quoted? (lambda (address store church-exp) ((church-force (cons 'a1978 . (address)) store church-tagged-list?) (cons 'a1979 . (address)) store church-exp 'quote))) (church-analyze-quoted (lambda (address store church-exp) ((church-force (cons 'a1980 . (address)) store (lambda (address store church-qval) (lambda (address store church-env) church-qval))) (cons 'a1981 . (address)) store ((church-force (cons 'a1982 . (address)) store church-text-of-quotation) (cons 'a1983 . (address)) store church-exp)))) (church-text-of-quotation church-second) (church-tagged-list? (lambda (address store church-exp church-tag) (if (church-force (cons 'a1984 . (address)) store ((church-force (cons 'a1985 . (address)) store church-pair?) (cons 'a1986 . (address)) store church-exp)) ((church-force (cons 'a1987 . (address)) store church-eq?) (cons 'a1988 . (address)) store ((church-force (cons 'a1989 . (address)) store church-first) (cons 'a1990 . (address)) store church-exp) church-tag) #f))) (church-application? (lambda (address store church-exp) ((church-force (cons 'a1991 . (address)) store church-pair?) (cons 'a1992 . (address)) store church-exp))) (church-analyze-application (lambda (address store church-exp) ((church-force (cons 'a1993 . (address)) store (lambda (address store church-fproc church-aprocs) (lambda (address store church-env) ((church-force (cons 'a1994 . (address)) store church-execute-application) (cons 'a1995 . (address)) store ((church-force (cons 'a1996 . (address)) store church-fproc) (cons 'a1997 . (address)) store church-env) ((church-force (cons 'a1998 . (address)) store church-map) (cons 'a1999 . (address)) store (lambda (address store church-aproc) ((church-force (cons 'a2000 . (address)) store church-aproc) (cons 'a2001 . (address)) store church-env)) church-aprocs))))) (cons 'a2002 . (address)) store ((church-force (cons 'a2003 . (address)) store church-analyze) (cons 'a2004 . (address)) store ((church-force (cons 'a2005 . (address)) store church-operator) (cons 'a2006 . (address)) store church-exp)) ((church-force (cons 'a2007 . (address)) store church-map) (cons 'a2008 . (address)) store church-analyze ((church-force (cons 'a2009 . (address)) store church-operands) (cons 'a2010 . (address)) store church-exp))))) (church-operator church-first) (church-operands church-rest) (church-execute-application (lambda (address store church-proc church-args) (if (church-force (cons 'a2011 . (address)) store ((church-force (cons 'a2012 . (address)) store church-primitive-procedure?) (cons 'a2013 . (address)) store church-proc)) ((church-force (cons 'a2014 . (address)) store church-apply) (cons 'a2015 . (address)) store church-proc church-args) ((church-force (cons 'a2016 . (address)) store church-error) (cons 'a2017 . (address)) store "Unknown procedure type -- EXECUTE-APPLICATION" church-proc)))) (church-primitive-procedure? (lambda (address store church-proc) ((church-force (cons 'a2018 . (address)) store church-tagged-list?) (cons 'a2019 . (address)) store church-proc 'primitive))) (church-apply-primitive-procedure (lambda (address store church-proc church-args) ((church-force (cons 'a2020 . (address)) store church-apply) (cons 'a2021 . (address)) store ((church-force (cons 'a2022 . (address)) store church-primitive-implementation) (cons 'a2023 . (address)) store church-proc) church-args))) (church-primitive-implementation (lambda (address store church-proc) ((church-force (cons 'a2024 . (address)) store church-second) (cons 'a2025 . (address)) store church-proc))) (church-learn-model (lambda (address store church-data) ((church-force (cons 'a2026 . (address)) store (lambda (address store church-initial-sexpr) ((church-force (cons 'a2027 . (address)) store (lambda (address store church-learned-sexpr) ((church-force (cons 'a2028 . (address)) store (lambda (address store church-model) (begin (church-force (cons 'a2029 . (address)) store ((church-force (cons 'a2030 . (address)) store church-pretty-print) (cons 'a2031 . (address)) store ((church-force (cons 'a2032 . (address)) store church-list) (cons 'a2033 . (address)) store "compressed-program:" church-learned-sexpr "size: " ((church-force (cons 'a2034 . (address)) store church-size) (cons 'a2035 . (address)) store church-learned-sexpr)))) church-model))) (cons 'a2036 . (address)) store (lambda (address store) ((church-force (cons 'a2037 . (address)) store church-lazy-list->all-list) (cons 'a2038 . (address)) store ((church-force (cons 'a2039 . (address)) store church-eval) (cons 'a2040 . (address)) store church-learned-sexpr)))))) (cons 'a2041 . (address)) store ((church-force (cons 'a2042 . (address)) store church-beam-learn) (cons 'a2043 . (address)) store church-data church-initial-sexpr)))) (cons 'a2044 . (address)) store ((church-force (cons 'a2045 . (address)) store church-make-initial-sexpr) (cons 'a2046 . (address)) store church-data)))) (church-make-initial-sexpr (lambda (address store church-data) ((church-force (cons 'a2047 . (address)) store (lambda (address store church-literal-sexprs) ((church-force (cons 'a2048 . (address)) store church-list) (cons 'a2049 . (address)) store 'uniform-draw ((church-force (cons 'a2050 . (address)) store church-pair) (cons 'a2051 . (address)) store 'list church-literal-sexprs)))) (cons 'a2052 . (address)) store ((church-force (cons 'a2053 . (address)) store church-map) (cons 'a2054 . (address)) store church-tree->program church-data)))) (church-beam-learn (lambda (address store church-data church-sexpr) church-sexpr)) (church-beam-learn-search-compressions (lambda (address store church-data church-beam-size church-program church-size-weight church-score-weight) ((church-force (cons 'a2055 . (address)) store church-my-iterated-compressions) (cons 'a2056 . (address)) store (lambda (address store church-progs) ((church-force (cons 'a2057 . (address)) store church-best-n) (cons 'a2058 . (address)) store church-beam-size ((church-force (cons 'a2059 . (address)) store church-unique-programs) (cons 'a2060 . (address)) store church-progs) church-data church-size-weight church-score-weight)) church-program))) (church-my-iterated-compressions (lambda (address store church-cfilter church-program) ((church-force (cons 'a2061 . (address)) store (lambda (address store church-compressed-programs) ((church-force (cons 'a2062 . (address)) store church-append) (cons 'a2063 . (address)) store church-compressed-programs ((church-force (cons 'a2064 . (address)) store church-apply) (cons 'a2065 . (address)) store church-append ((church-force (cons 'a2066 . (address)) store church-map) (cons 'a2067 . (address)) store (lambda (address store church-prog) ((church-force (cons 'a2068 . (address)) store church-my-iterated-compressions) (cons 'a2069 . (address)) store church-cfilter church-prog)) church-compressed-programs))))) (cons 'a2070 . (address)) store ((church-force (cons 'a2071 . (address)) store church-cfilter) (cons 'a2072 . (address)) store ((church-force (cons 'a2073 . (address)) store church-compressions) (cons 'a2074 . (address)) store church-program))))) (church-best-n (lambda (address store church-n church-programs church-data church-size-weight church-score-weight) ((church-force (cons 'a2075 . (address)) store church-max-take) (cons 'a2076 . (address)) store ((church-force (cons 'a2077 . (address)) store church-sort-by-score-and-size) (cons 'a2078 . (address)) store church-programs church-data church-size-weight church-score-weight) church-n))) (church-sort-by-score-and-size (lambda (address store church-programs church-data church-size-weight church-score-weight) ((church-force (cons 'a2079 . (address)) store (lambda (address store church-program-sizes) ((church-force (cons 'a2080 . (address)) store (lambda (address store church-program-scores) ((church-force (cons 'a2081 . (address)) store (lambda (address store church-total-weight) ((church-force (cons 'a2082 . (address)) store (lambda (address store church-db) ((church-force (cons 'a2083 . (address)) store (lambda (address store church-programs-with-weights) ((church-force (cons 'a2084 . (address)) store (lambda (address store church-weight<) ((church-force (cons 'a2085 . (address)) store church-map) (cons 'a2086 . (address)) store church-first ((church-force (cons 'a2087 . (address)) store church-my-list-sort) (cons 'a2088 . (address)) store church-weight< church-programs-with-weights)))) (cons 'a2089 . (address)) store (lambda (address store church-a church-b) ((church-force (cons 'a2090 . (address)) store church-<) (cons 'a2091 . (address)) store ((church-force (cons 'a2092 . (address)) store church-second) (cons 'a2093 . (address)) store church-a) ((church-force (cons 'a2094 . (address)) store church-second) (cons 'a2095 . (address)) store church-b)))))) (cons 'a2096 . (address)) store ((church-force (cons 'a2097 . (address)) store church-zip) (cons 'a2098 . (address)) store church-programs church-total-weight)))) (cons 'a2099 . (address)) store ((church-force (cons 'a2100 . (address)) store church-pretty-print) (cons 'a2101 . (address)) store ((church-force (cons 'a2102 . (address)) store church-zip) (cons 'a2103 . (address)) store church-programs church-program-sizes church-program-scores))))) (cons 'a2104 . (address)) store ((church-force (cons 'a2105 . (address)) store church-combine-size-score) (cons 'a2106 . (address)) store church-program-sizes church-program-scores church-size-weight church-score-weight)))) (cons 'a2107 . (address)) store ((church-force (cons 'a2108 . (address)) store church-map) (cons 'a2109 . (address)) store ((church-force (cons 'a2110 . (address)) store church-compose) (cons 'a2111 . (address)) store (lambda (address store church-prog) ((church-force (cons 'a2112 . (address)) store church-scoring) (cons 'a2113 . (address)) store church-prog church-data 10)) church-program->sexpr) church-programs)))) (cons 'a2114 . (address)) store ((church-force (cons 'a2115 . (address)) store church-map) (cons 'a2116 . (address)) store ((church-force (cons 'a2117 . (address)) store church-compose) (cons 'a2118 . (address)) store church-size church-program->sexpr) church-programs)))) (church-my-list-sort (lambda (address store church-compare church-lst) (if (church-force (cons 'a2119 . (address)) store ((church-force (cons 'a2120 . (address)) store church-null?) (cons 'a2121 . (address)) store church-lst)) '() ((church-force (cons 'a2122 . (address)) store (lambda (address store church-pivot) ((church-force (cons 'a2123 . (address)) store (lambda (address store church-lst) ((church-force (cons 'a2124 . (address)) store (lambda (address store church-lessthan+greaterthan) ((church-force (cons 'a2125 . (address)) store church-append) (cons 'a2126 . (address)) store ((church-force (cons 'a2127 . (address)) store church-my-list-sort) (cons 'a2128 . (address)) store church-compare ((church-force (cons 'a2129 . (address)) store church-first) (cons 'a2130 . (address)) store church-lessthan+greaterthan)) ((church-force (cons 'a2131 . (address)) store church-pair) (cons 'a2132 . (address)) store church-pivot ((church-force (cons 'a2133 . (address)) store church-my-list-sort) (cons 'a2134 . (address)) store church-compare ((church-force (cons 'a2135 . (address)) store church-second) (cons 'a2136 . (address)) store church-lessthan+greaterthan)))))) (cons 'a2137 . (address)) store ((church-force (cons 'a2138 . (address)) store church-my-partition) (cons 'a2139 . (address)) store church-compare church-pivot church-lst)))) (cons 'a2140 . (address)) store ((church-force (cons 'a2141 . (address)) store church-rest) (cons 'a2142 . (address)) store church-lst)))) (cons 'a2143 . (address)) store ((church-force (cons 'a2144 . (address)) store church-first) (cons 'a2145 . (address)) store church-lst))))) (church-my-partition (lambda (address store church-compare church-pivot church-lst) (if (church-force (cons 'a2146 . (address)) store ((church-force (cons 'a2147 . (address)) store church-null?) (cons 'a2148 . (address)) store church-lst)) ((church-force (cons 'a2149 . (address)) store church-list) (cons 'a2150 . (address)) store '() '()) ((church-force (cons 'a2151 . (address)) store (lambda (address store church-comparestrue+comparesfalse) ((church-force (cons 'a2152 . (address)) store (lambda (address store church-comparestrue) ((church-force (cons 'a2153 . (address)) store (lambda (address store church-comparesfalse) ((church-force (cons 'a2154 . (address)) store (lambda (address store church-current-item) (if (church-force (cons 'a2155 . (address)) store ((church-force (cons 'a2156 . (address)) store church-compare) (cons 'a2157 . (address)) store church-current-item church-pivot)) ((church-force (cons 'a2158 . (address)) store church-list) (cons 'a2159 . (address)) store ((church-force (cons 'a2160 . (address)) store church-pair) (cons 'a2161 . (address)) store church-current-item church-comparestrue) church-comparesfalse) ((church-force (cons 'a2162 . (address)) store church-list) (cons 'a2163 . (address)) store church-comparestrue ((church-force (cons 'a2164 . (address)) store church-pair) (cons 'a2165 . (address)) store church-current-item church-comparesfalse))))) (cons 'a2166 . (address)) store ((church-force (cons 'a2167 . (address)) store church-first) (cons 'a2168 . (address)) store church-lst)))) (cons 'a2169 . (address)) store ((church-force (cons 'a2170 . (address)) store church-second) (cons 'a2171 . (address)) store church-comparestrue+comparesfalse)))) (cons 'a2172 . (address)) store ((church-force (cons 'a2173 . (address)) store church-first) (cons 'a2174 . (address)) store church-comparestrue+comparesfalse)))) (cons 'a2175 . (address)) store ((church-force (cons 'a2176 . (address)) store church-my-partition) (cons 'a2177 . (address)) store church-compare church-pivot ((church-force (cons 'a2178 . (address)) store church-rest) (cons 'a2179 . (address)) store church-lst)))))) (church-combine-size-score (lambda (address store church-sizes church-scores church-size-weight church-score-weight) ((church-force (cons 'a2180 . (address)) store church-map) (cons 'a2181 . (address)) store church-+ ((church-force (cons 'a2182 . (address)) store church-map) (cons 'a2183 . (address)) store (lambda (address store church-x) ((church-force (cons 'a2184 . (address)) store church-*) (cons 'a2185 . (address)) store church-x church-size-weight)) church-sizes) ((church-force (cons 'a2186 . (address)) store church-map) (cons 'a2187 . (address)) store (lambda (address store church-x) ((church-force (cons 'a2188 . (address)) store church-*) (cons 'a2189 . (address)) store church-x ((church-force (cons 'a2190 . (address)) store church--) (cons 'a2191 . (address)) store church-score-weight))) church-scores)))) (church-compose (lambda (address store church-f church-g) (lambda (address store church-x) ((church-force (cons 'a2192 . (address)) store church-f) (cons 'a2193 . (address)) store ((church-force (cons 'a2194 . (address)) store church-g) (cons 'a2195 . (address)) store church-x))))) (church-scoring (lambda (address store church-prog church-data church-popsize) ((church-force (cons 'a2196 . (address)) store (lambda (address store church-samples) ((church-force (cons 'a2197 . (address)) store (lambda (address store church-samples) ((church-force (cons 'a2198 . (address)) store (lambda (address store church-scores) ((church-force (cons 'a2199 . (address)) store (lambda (address store church-score) church-score)) (cons 'a2200 . (address)) store (if (church-force (cons 'a2201 . (address)) store ((church-force (cons 'a2202 . (address)) store church-null?) (cons 'a2203 . (address)) store church-scores)) -inf.0 ((church-force (cons 'a2204 . (address)) store church-apply) (cons 'a2205 . (address)) store church-log-sum-exp church-scores))))) (cons 'a2206 . (address)) store ((church-force (cons 'a2207 . (address)) store church-map) (cons 'a2208 . (address)) store church-mcmc-state->score church-samples)))) (cons 'a2209 . (address)) store ((church-force (cons 'a2210 . (address)) store church-fold) (cons 'a2211 . (address)) store (lambda (address store church-s church-a) (if (church-force (cons 'a2212 . (address)) store ((church-force (cons 'a2213 . (address)) store church-member) (cons 'a2214 . (address)) store ((church-force (cons 'a2215 . (address)) store church-mcmc-state->addrval) (cons 'a2216 . (address)) store church-s) ((church-force (cons 'a2217 . (address)) store church-map) (cons 'a2218 . (address)) store church-mcmc-state->addrval church-a))) church-a ((church-force (cons 'a2219 . (address)) store church-pair) (cons 'a2220 . (address)) store church-s church-a))) '() church-samples)))) (cons 'a2221 . (address)) store ((church-force (cons 'a2222 . (address)) store church-smc-core) (cons 'a2223 . (address)) store ((church-force (cons 'a2224 . (address)) store church-map) (cons 'a2225 . (address)) store church-list ((church-force (cons 'a2226 . (address)) store church-iota) (cons 'a2227 . (address)) store ((church-force (cons 'a2228 . (address)) store church-+) (cons 'a2229 . (address)) store 1 ((church-force (cons 'a2230 . (address)) store church-lazy-list-size) (cons 'a2231 . (address)) store church-data)))) church-popsize 0 (lambda (address store church-depth) (lambda (address store) ((church-force (cons 'a2232 . (address)) store (lambda (address store church-s) ((church-force (cons 'a2233 . (address)) store church-pair) (cons 'a2234 . (address)) store ((church-force (cons 'a2235 . (address)) store church-lazy-equal?) (cons 'a2236 . (address)) store church-s church-data church-depth) (lambda (address store) ((church-force (cons 'a2237 . (address)) store church-first) (cons 'a2238 . (address)) store ((church-force (cons 'a2239 . (address)) store church-lazy-list->list) (cons 'a2240 . (address)) store church-s church-depth)))))) (cons 'a2241 . (address)) store ((church-force (cons 'a2242 . (address)) store church-eval) (cons 'a2243 . (address)) store church-prog)))))))) (church-samples 150) (church-lag 20) (church-runs 5) (church-error-tolerance 7e-2) (church-crp-param 0.5) (church-dirichlet-param 1e-2) (church-CRP-param 1.0)) (begin (church-force (cons 'a2244 . (address)) store ((church-force (cons 'a2245 . (address)) store church-equal?-test) (cons 'a2246 . (address)) store "deterministic test: begin-define" (letrec ((church-a 10)) church-a) 10)) (church-force (cons 'a2247 . (address)) store ((church-force (cons 'a2248 . (address)) store church-equal?-test) (cons 'a2249 . (address)) store "deterministic test: begin-define 2" (letrec ((church-foo (lambda (address store church-x . church-y) church-y))) ((church-force (cons 'a2250 . (address)) store church-foo) (cons 'a2251 . (address)) store 1 2 3 4)) '(2 3 4))) (church-force (cons 'a2252 . (address)) store ((church-force (cons 'a2253 . (address)) store church-equal?-test) (cons 'a2254 . (address)) store "deterministic test: begin-define 3" (letrec ((church-a 10) (church-b 12)) (begin (church-force (cons 'a2255 . (address)) store church-a) ((church-force (cons 'a2256 . (address)) store church-+) (cons 'a2257 . (address)) store church-a church-b))) 22)) (church-force (cons 'a2258 . (address)) store ((church-force (cons 'a2259 . (address)) store church-equal?-test) (cons 'a2260 . (address)) store "deterministic test: let-desugar" ((church-force (cons 'a2261 . (address)) store (lambda (address store church-a church-b) (begin (church-force (cons 'a2262 . (address)) store 'x) ((church-force (cons 'a2263 . (address)) store (lambda (address store church-b church-a) (begin (church-force (cons 'a2264 . (address)) store 'y) ((church-force (cons 'a2265 . (address)) store church-list) (cons 'a2266 . (address)) store church-a church-b)))) (cons 'a2267 . (address)) store church-a church-b)))) (cons 'a2268 . (address)) store 1 2) '(2 1))) (church-force (cons 'a2269 . (address)) store ((church-force (cons 'a2270 . (address)) store church-equal?-test) (cons 'a2271 . (address)) store "deterministic test: named-let-desugar" (letrec ((church-loop (lambda (address store church-n) (if (church-force (cons 'a2272 . (address)) store ((church-force (cons 'a2273 . (address)) store church-<=) (cons 'a2274 . (address)) store church-n 1)) 1 ((church-force (cons 'a2275 . (address)) store church-+) (cons 'a2276 . (address)) store ((church-force (cons 'a2277 . (address)) store church-loop) (cons 'a2278 . (address)) store ((church-force (cons 'a2279 . (address)) store church--) (cons 'a2280 . (address)) store church-n 2)) ((church-force (cons 'a2281 . (address)) store church-loop) (cons 'a2282 . (address)) store ((church-force (cons 'a2283 . (address)) store church--) (cons 'a2284 . (address)) store church-n 1))))))) ((church-force (cons 'a2285 . (address)) store church-loop) (cons 'a2286 . (address)) store 4)) 5)) (church-force (cons 'a2287 . (address)) store ((church-force (cons 'a2288 . (address)) store church-equal?-test) (cons 'a2289 . (address)) store "deterministic test: let*-desugar" ((church-force (cons 'a2290 . (address)) store (lambda (address store church-a church-b) (begin (church-force (cons 'a2291 . (address)) store 'x) ((church-force (cons 'a2292 . (address)) store (lambda (address store church-b) ((church-force (cons 'a2293 . (address)) store (lambda (address store church-a) (begin (church-force (cons 'a2294 . (address)) store 'y) ((church-force (cons 'a2295 . (address)) store church-list) (cons 'a2296 . (address)) store church-a church-b)))) (cons 'a2297 . (address)) store church-b))) (cons 'a2298 . (address)) store church-a)))) (cons 'a2299 . (address)) store 1 2) '(1 1))) (church-force (cons 'a2300 . (address)) store ((church-force (cons 'a2301 . (address)) store church-equal?-test) (cons 'a2302 . (address)) store "deterministic test: case-desugar" ((church-force (cons 'a2303 . (address)) store (lambda (address store church-g0) (if (church-force (cons 'a2304 . (address)) store ((church-force (cons 'a2305 . (address)) store church-any) (cons 'a2306 . (address)) store ((church-force (cons 'a2307 . (address)) store church-list) (cons 'a2308 . (address)) store ((church-force (cons 'a2309 . (address)) store church-equal?) (cons 'a2310 . (address)) store church-g0 7) ((church-force (cons 'a2311 . (address)) store church-equal?) (cons 'a2312 . (address)) store church-g0 9) ((church-force (cons 'a2313 . (address)) store church-equal?) (cons 'a2314 . (address)) store church-g0 11)))) (begin (church-force (cons 'a2315 . (address)) store 'x) 'odd) (if (church-force (cons 'a2316 . (address)) store ((church-force (cons 'a2317 . (address)) store church-any) (cons 'a2318 . (address)) store ((church-force (cons 'a2319 . (address)) store church-list) (cons 'a2320 . (address)) store ((church-force (cons 'a2321 . (address)) store church-equal?) (cons 'a2322 . (address)) store church-g0 6) ((church-force (cons 'a2323 . (address)) store church-equal?) (cons 'a2324 . (address)) store church-g0 8)))) (begin (church-force (cons 'a2325 . (address)) store 'y) 'even) (begin (church-force (cons 'a2326 . (address)) store 'z) 'nothing))))) (cons 'a2327 . (address)) store ((church-force (cons 'a2328 . (address)) store church-+) (cons 'a2329 . (address)) store 7 1)) 'even)) (church-force (cons 'a2330 . (address)) store ((church-force (cons 'a2331 . (address)) store church-equal?-test) (cons 'a2332 . (address)) store "deterministic test: cond-desugar" (if (church-force (cons 'a2333 . (address)) store ((church-force (cons 'a2334 . (address)) store church-<) (cons 'a2335 . (address)) store 2 1)) (begin (church-force (cons 'a2336 . (address)) store 'x) 'a) (if (church-force (cons 'a2337 . (address)) store ((church-force (cons 'a2338 . (address)) store church-<) (cons 'a2339 . (address)) store 1 1)) (begin (church-force (cons 'a2340 . (address)) store 'y) 'b) (begin (church-force (cons 'a2341 . (address)) store 'z) 'c))) 'c)) (church-force (cons 'a2342 . (address)) store ((church-force (cons 'a2343 . (address)) store church-equal?-test) (cons 'a2344 . (address)) store "deterministic test: cond-desugar" (if (church-force (cons 'a2345 . (address)) store ((church-force (cons 'a2346 . (address)) store church-<) (cons 'a2347 . (address)) store 2 1)) (begin (church-force (cons 'a2348 . (address)) store 'x) 'a) (if (church-force (cons 'a2349 . (address)) store ((church-force (cons 'a2350 . (address)) store church-<=) (cons 'a2351 . (address)) store 1 1)) (begin (church-force (cons 'a2352 . (address)) store 'y) 'b) (begin (church-force (cons 'a2353 . (address)) store 'z) 'c))) 'b)) (church-force (cons 'a2354 . (address)) store ((church-force (cons 'a2355 . (address)) store church-equal?-test) (cons 'a2356 . (address)) store "deterministic test: map" ((church-force (cons 'a2357 . (address)) store church-map) (cons 'a2358 . (address)) store (lambda (address store church-x) ((church-force (cons 'a2359 . (address)) store church-list) (cons 'a2360 . (address)) store church-x church-x)) ((church-force (cons 'a2361 . (address)) store church-list) (cons 'a2362 . (address)) store 1 2 3)) '((1 1) (2 2) (3 3)))) (church-force (cons 'a2363 . (address)) store ((church-force (cons 'a2364 . (address)) store church-check-test) (cons 'a2365 . (address)) store ((church-force (cons 'a2366 . (address)) store church-repeat) (cons 'a2367 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2368 . (address)) store church-repeat) (cons 'a2369 . (address)) store church-samples (lambda (address store) ((church-force (cons 'a2370 . (address)) store church-flip) (cons 'a2371 . (address)) store 0.7))))) (lambda (address store church-x) (if (church-force (cons 'a2372 . (address)) store church-x) 1 0)) 0.7 church-error-tolerance "random, no query")) (church-force (cons 'a2373 . (address)) store ((church-force (cons 'a2374 . (address)) store church-check-test) (cons 'a2375 . (address)) store ((church-force (cons 'a2376 . (address)) store church-repeat) (cons 'a2377 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2378 . (address)) store church-mh-query) (cons 'a2379 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a ((church-force (cons 'a2380 . (address)) store church-/) (cons 'a2381 . (address)) store 1 1000))) ((church-force (cons 'a2382 . (address)) store church-pair) (cons 'a2383 . (address)) store ((church-force (cons 'a2384 . (address)) store church-flip) (cons 'a2385 . (address)) store church-a) (lambda (address store) church-a))))))) (lambda (address store church-b) church-b) ((church-force (cons 'a2386 . (address)) store church-/) (cons 'a2387 . (address)) store 1 1000) 0.0 "setting a flip")) (church-force (cons 'a2388 . (address)) store ((church-force (cons 'a2389 . (address)) store church-check-test) (cons 'a2390 . (address)) store ((church-force (cons 'a2391 . (address)) store church-repeat) (cons 'a2392 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2393 . (address)) store church-mh-query) (cons 'a2394 . (address)) store church-samples church-lag (lambda (address store) (begin ((church-force (cons 'a2395 . (address)) store church-pair) (cons 'a2396 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2397 . (address)) store church-flip) (cons 'a2398 . (address)) store 0.7)))))))) (lambda (address store church-x) (if (church-force (cons 'a2399 . (address)) store church-x) 1 0)) 0.7 church-error-tolerance "unconditioned flip.")) (church-force (cons 'a2400 . (address)) store ((church-force (cons 'a2401 . (address)) store church-check-test) (cons 'a2402 . (address)) store ((church-force (cons 'a2403 . (address)) store church-repeat) (cons 'a2404 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2405 . (address)) store church-mh-query) (cons 'a2406 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a ((church-force (cons 'a2407 . (address)) store church-flip) (cons 'a2408 . (address)) store)) (church-b ((church-force (cons 'a2409 . (address)) store church-flip) (cons 'a2410 . (address)) store))) ((church-force (cons 'a2411 . (address)) store church-pair) (cons 'a2412 . (address)) store ((church-force (cons 'a2413 . (address)) store church-or) (cons 'a2414 . (address)) store church-a church-b) (lambda (address store) ((church-force (cons 'a2415 . (address)) store church-and) (cons 'a2416 . (address)) store church-a church-b)))))))) (lambda (address store church-x) (if (church-force (cons 'a2417 . (address)) store church-x) 1 0)) ((church-force (cons 'a2418 . (address)) store church-/) (cons 'a2419 . (address)) store 1 3) church-error-tolerance "and conditioned on or.")) (church-force (cons 'a2420 . (address)) store ((church-force (cons 'a2421 . (address)) store church-check-test) (cons 'a2422 . (address)) store ((church-force (cons 'a2423 . (address)) store church-repeat) (cons 'a2424 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2425 . (address)) store church-mh-query) (cons 'a2426 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a ((church-force (cons 'a2427 . (address)) store church-flip) (cons 'a2428 . (address)) store 0.3)) (church-b ((church-force (cons 'a2429 . (address)) store church-flip) (cons 'a2430 . (address)) store 0.3))) ((church-force (cons 'a2431 . (address)) store church-pair) (cons 'a2432 . (address)) store ((church-force (cons 'a2433 . (address)) store church-or) (cons 'a2434 . (address)) store church-a church-b) (lambda (address store) ((church-force (cons 'a2435 . (address)) store church-and) (cons 'a2436 . (address)) store church-a church-b)))))))) (lambda (address store church-x) (if (church-force (cons 'a2437 . (address)) store church-x) 1 0)) ((church-force (cons 'a2438 . (address)) store church-/) (cons 'a2439 . (address)) store ((church-force (cons 'a2440 . (address)) store church-*) (cons 'a2441 . (address)) store 0.3 0.3) ((church-force (cons 'a2442 . (address)) store church-+) (cons 'a2443 . (address)) store ((church-force (cons 'a2444 . (address)) store church-*) (cons 'a2445 . (address)) store 0.3 0.3) ((church-force (cons 'a2446 . (address)) store church-*) (cons 'a2447 . (address)) store 0.7 0.3) ((church-force (cons 'a2448 . (address)) store church-*) (cons 'a2449 . (address)) store 0.3 0.7))) church-error-tolerance "and conditioned on or, biased flip.")) (church-force (cons 'a2450 . (address)) store ((church-force (cons 'a2451 . (address)) store church-check-test) (cons 'a2452 . (address)) store ((church-force (cons 'a2453 . (address)) store church-repeat) (cons 'a2454 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2455 . (address)) store church-mh-query) (cons 'a2456 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-bit-flip (lambda (address store church-fidelity church-x) ((church-force (cons 'a2457 . (address)) store church-flip) (cons 'a2458 . (address)) store (if (church-force (cons 'a2459 . (address)) store church-x) church-fidelity ((church-force (cons 'a2460 . (address)) store church--) (cons 'a2461 . (address)) store 1 church-fidelity))))) (church-hyp ((church-force (cons 'a2462 . (address)) store church-flip) (cons 'a2463 . (address)) store 0.7))) ((church-force (cons 'a2464 . (address)) store church-pair) (cons 'a2465 . (address)) store ((church-force (cons 'a2466 . (address)) store church-bit-flip) (cons 'a2467 . (address)) store 0.8 church-hyp) (lambda (address store) church-hyp))))))) (lambda (address store church-x) (if (church-force (cons 'a2468 . (address)) store church-x) 1 0)) ((church-force (cons 'a2469 . (address)) store church-/) (cons 'a2470 . (address)) store ((church-force (cons 'a2471 . (address)) store church-*) (cons 'a2472 . (address)) store 0.7 0.8) ((church-force (cons 'a2473 . (address)) store church-+) (cons 'a2474 . (address)) store ((church-force (cons 'a2475 . (address)) store church-*) (cons 'a2476 . (address)) store 0.7 0.8) ((church-force (cons 'a2477 . (address)) store church-*) (cons 'a2478 . (address)) store 0.3 0.2))) church-error-tolerance "conditioned flip.")) (church-force (cons 'a2479 . (address)) store ((church-force (cons 'a2480 . (address)) store church-check-test) (cons 'a2481 . (address)) store ((church-force (cons 'a2482 . (address)) store church-repeat) (cons 'a2483 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2484 . (address)) store church-mh-query) (cons 'a2485 . (address)) store church-samples church-lag (lambda (address store) (begin ((church-force (cons 'a2486 . (address)) store church-pair) (cons 'a2487 . (address)) store church-true (lambda (address store) (if (church-force (cons 'a2488 . (address)) store ((church-force (cons 'a2489 . (address)) store church-flip) (cons 'a2490 . (address)) store 0.7)) ((church-force (cons 'a2491 . (address)) store church-flip) (cons 'a2492 . (address)) store 0.2) ((church-force (cons 'a2493 . (address)) store church-flip) (cons 'a2494 . (address)) store 0.8))))))))) (lambda (address store church-x) (if (church-force (cons 'a2495 . (address)) store church-x) 1 0)) ((church-force (cons 'a2496 . (address)) store church-+) (cons 'a2497 . (address)) store ((church-force (cons 'a2498 . (address)) store church-*) (cons 'a2499 . (address)) store 0.7 0.2) ((church-force (cons 'a2500 . (address)) store church-*) (cons 'a2501 . (address)) store 0.3 0.8)) church-error-tolerance "random 'if' with random branches, unconditioned.")) (church-force (cons 'a2502 . (address)) store ((church-force (cons 'a2503 . (address)) store church-check-test) (cons 'a2504 . (address)) store ((church-force (cons 'a2505 . (address)) store church-repeat) (cons 'a2506 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2507 . (address)) store church-mh-query) (cons 'a2508 . (address)) store church-samples church-lag (lambda (address store) (begin ((church-force (cons 'a2509 . (address)) store church-pair) (cons 'a2510 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2511 . (address)) store church-flip) (cons 'a2512 . (address)) store (if (church-force (cons 'a2513 . (address)) store ((church-force (cons 'a2514 . (address)) store church-flip) (cons 'a2515 . (address)) store 0.7)) 0.2 0.8))))))))) (lambda (address store church-x) (if (church-force (cons 'a2516 . (address)) store church-x) 1 0)) ((church-force (cons 'a2517 . (address)) store church-+) (cons 'a2518 . (address)) store ((church-force (cons 'a2519 . (address)) store church-*) (cons 'a2520 . (address)) store 0.7 0.2) ((church-force (cons 'a2521 . (address)) store church-*) (cons 'a2522 . (address)) store 0.3 0.8)) church-error-tolerance "flip with random weight, unconditioned.")) (church-force (cons 'a2523 . (address)) store ((church-force (cons 'a2524 . (address)) store church-check-test) (cons 'a2525 . (address)) store ((church-force (cons 'a2526 . (address)) store church-repeat) (cons 'a2527 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2528 . (address)) store church-mh-query) (cons 'a2529 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc (if (church-force (cons 'a2530 . (address)) store ((church-force (cons 'a2531 . (address)) store church-flip) (cons 'a2532 . (address)) store 0.7)) (lambda (address store church-x) ((church-force (cons 'a2533 . (address)) store church-flip) (cons 'a2534 . (address)) store 0.2)) (lambda (address store church-x) ((church-force (cons 'a2535 . (address)) store church-flip) (cons 'a2536 . (address)) store 0.8))))) ((church-force (cons 'a2537 . (address)) store church-pair) (cons 'a2538 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2539 . (address)) store church-proc) (cons 'a2540 . (address)) store 1)))))))) (lambda (address store church-x) (if (church-force (cons 'a2541 . (address)) store church-x) 1 0)) ((church-force (cons 'a2542 . (address)) store church-+) (cons 'a2543 . (address)) store ((church-force (cons 'a2544 . (address)) store church-*) (cons 'a2545 . (address)) store 0.7 0.2) ((church-force (cons 'a2546 . (address)) store church-*) (cons 'a2547 . (address)) store 0.3 0.8)) church-error-tolerance "random procedure application, unconditioned.")) (church-force (cons 'a2548 . (address)) store ((church-force (cons 'a2549 . (address)) store church-check-test) (cons 'a2550 . (address)) store ((church-force (cons 'a2551 . (address)) store church-repeat) (cons 'a2552 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2553 . (address)) store church-mh-query) (cons 'a2554 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-hyp ((church-force (cons 'a2555 . (address)) store church-multinomial) (cons 'a2556 . (address)) store ((church-force (cons 'a2557 . (address)) store church-list) (cons 'a2558 . (address)) store 'b 'c 'd) ((church-force (cons 'a2559 . (address)) store church-list) (cons 'a2560 . (address)) store 0.1 0.6 0.3))) (church-observe (lambda (address store church-x) (if (church-force (cons 'a2561 . (address)) store ((church-force (cons 'a2562 . (address)) store church-flip) (cons 'a2563 . (address)) store 0.8)) church-x 'b)))) ((church-force (cons 'a2564 . (address)) store church-pair) (cons 'a2565 . (address)) store ((church-force (cons 'a2566 . (address)) store church-eq?) (cons 'a2567 . (address)) store ((church-force (cons 'a2568 . (address)) store church-observe) (cons 'a2569 . (address)) store church-hyp) 'b) (lambda (address store) ((church-force (cons 'a2570 . (address)) store church-eq?) (cons 'a2571 . (address)) store church-hyp 'b)))))))) (lambda (address store church-x) (if (church-force (cons 'a2572 . (address)) store church-x) 1 0)) 0.357 church-error-tolerance "conditioned multinomial.")) (church-force (cons 'a2573 . (address)) store ((church-force (cons 'a2574 . (address)) store church-check-test) (cons 'a2575 . (address)) store ((church-force (cons 'a2576 . (address)) store church-repeat) (cons 'a2577 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2578 . (address)) store church-mh-query) (cons 'a2579 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-power-law (lambda (address store church-prob church-x) (if (church-force (cons 'a2580 . (address)) store ((church-force (cons 'a2581 . (address)) store church-flip) (cons 'a2582 . (address)) store church-prob)) church-x ((church-force (cons 'a2583 . (address)) store church-power-law) (cons 'a2584 . (address)) store church-prob ((church-force (cons 'a2585 . (address)) store church-+) (cons 'a2586 . (address)) store church-x 1))))) (church-a ((church-force (cons 'a2587 . (address)) store church-power-law) (cons 'a2588 . (address)) store 0.3 1))) ((church-force (cons 'a2589 . (address)) store church-pair) (cons 'a2590 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2591 . (address)) store church-<) (cons 'a2592 . (address)) store church-a 5)))))))) (lambda (address store church-x) (if (church-force (cons 'a2593 . (address)) store church-x) 1 0)) ((church-force (cons 'a2594 . (address)) store church-apply) (cons 'a2595 . (address)) store church-+ ((church-force (cons 'a2596 . (address)) store (lambda (address store church-prob) ((church-force (cons 'a2597 . (address)) store church-map) (cons 'a2598 . (address)) store (lambda (address store church-x) ((church-force (cons 'a2599 . (address)) store church-*) (cons 'a2600 . (address)) store ((church-force (cons 'a2601 . (address)) store church-expt) (cons 'a2602 . (address)) store ((church-force (cons 'a2603 . (address)) store church--) (cons 'a2604 . (address)) store 1 church-prob) ((church-force (cons 'a2605 . (address)) store church--) (cons 'a2606 . (address)) store church-x 1)) church-prob)) ((church-force (cons 'a2607 . (address)) store church-list) (cons 'a2608 . (address)) store 1 2 3 4)))) (cons 'a2609 . (address)) store 0.3)) church-error-tolerance "recursive stochastic fn using define, unconditioned.")) (church-force (cons 'a2610 . (address)) store ((church-force (cons 'a2611 . (address)) store church-check-test) (cons 'a2612 . (address)) store ((church-force (cons 'a2613 . (address)) store church-repeat) (cons 'a2614 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2615 . (address)) store church-mh-query) (cons 'a2616 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2617 . (address)) store church-flip) (cons 'a2618 . (address)) store 0.8))))) ((church-force (cons 'a2619 . (address)) store church-pair) (cons 'a2620 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2621 . (address)) store church-and) (cons 'a2622 . (address)) store ((church-force (cons 'a2623 . (address)) store church-proc) (cons 'a2624 . (address)) store 1) ((church-force (cons 'a2625 . (address)) store church-proc) (cons 'a2626 . (address)) store 2) ((church-force (cons 'a2627 . (address)) store church-proc) (cons 'a2628 . (address)) store 1) ((church-force (cons 'a2629 . (address)) store church-proc) (cons 'a2630 . (address)) store 2))))))))) (lambda (address store church-x) (if (church-force (cons 'a2631 . (address)) store church-x) 1 0)) 0.64 church-error-tolerance "memoized flip, unconditioned.")) (church-force (cons 'a2632 . (address)) store ((church-force (cons 'a2633 . (address)) store church-check-test) (cons 'a2634 . (address)) store ((church-force (cons 'a2635 . (address)) store church-repeat) (cons 'a2636 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2637 . (address)) store church-mh-query) (cons 'a2638 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2639 . (address)) store church-flip) (cons 'a2640 . (address)) store 0.2))))) ((church-force (cons 'a2641 . (address)) store church-pair) (cons 'a2642 . (address)) store ((church-force (cons 'a2643 . (address)) store church-or) (cons 'a2644 . (address)) store ((church-force (cons 'a2645 . (address)) store church-proc) (cons 'a2646 . (address)) store 1) ((church-force (cons 'a2647 . (address)) store church-proc) (cons 'a2648 . (address)) store 2) ((church-force (cons 'a2649 . (address)) store church-proc) (cons 'a2650 . (address)) store 2) ((church-force (cons 'a2651 . (address)) store church-proc) (cons 'a2652 . (address)) store 2)) (lambda (address store) ((church-force (cons 'a2653 . (address)) store church-proc) (cons 'a2654 . (address)) store 1)))))))) (lambda (address store church-x) (if (church-force (cons 'a2655 . (address)) store church-x) 1 0)) ((church-force (cons 'a2656 . (address)) store church-/) (cons 'a2657 . (address)) store ((church-force (cons 'a2658 . (address)) store church-+) (cons 'a2659 . (address)) store ((church-force (cons 'a2660 . (address)) store church-*) (cons 'a2661 . (address)) store 0.2 0.2) ((church-force (cons 'a2662 . (address)) store church-*) (cons 'a2663 . (address)) store 0.2 0.8)) ((church-force (cons 'a2664 . (address)) store church-+) (cons 'a2665 . (address)) store ((church-force (cons 'a2666 . (address)) store church-*) (cons 'a2667 . (address)) store 0.2 0.2) ((church-force (cons 'a2668 . (address)) store church-*) (cons 'a2669 . (address)) store 0.2 0.8) ((church-force (cons 'a2670 . (address)) store church-*) (cons 'a2671 . (address)) store 0.8 0.2))) church-error-tolerance "memoized flip, conditioned.")) (church-force (cons 'a2672 . (address)) store ((church-force (cons 'a2673 . (address)) store church-check-test) (cons 'a2674 . (address)) store ((church-force (cons 'a2675 . (address)) store church-repeat) (cons 'a2676 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2677 . (address)) store church-mh-query) (cons 'a2678 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a ((church-force (cons 'a2679 . (address)) store church-flip) (cons 'a2680 . (address)) store 0.8)) (church-proc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) church-a)))) ((church-force (cons 'a2681 . (address)) store church-pair) (cons 'a2682 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2683 . (address)) store church-and) (cons 'a2684 . (address)) store ((church-force (cons 'a2685 . (address)) store church-proc) (cons 'a2686 . (address)) store 1) ((church-force (cons 'a2687 . (address)) store church-proc) (cons 'a2688 . (address)) store 1))))))))) (lambda (address store church-x) (if (church-force (cons 'a2689 . (address)) store church-x) 1 0)) 0.8 church-error-tolerance "bound symbol used inside memoizer, unconditioned.")) (church-force (cons 'a2690 . (address)) store ((church-force (cons 'a2691 . (address)) store church-check-test) (cons 'a2692 . (address)) store ((church-force (cons 'a2693 . (address)) store church-repeat) (cons 'a2694 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2695 . (address)) store church-mh-query) (cons 'a2696 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2697 . (address)) store church-flip) (cons 'a2698 . (address)) store 0.8))))) ((church-force (cons 'a2699 . (address)) store church-pair) (cons 'a2700 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2701 . (address)) store church-and) (cons 'a2702 . (address)) store ((church-force (cons 'a2703 . (address)) store church-proc) (cons 'a2704 . (address)) store ((church-force (cons 'a2705 . (address)) store church-uniform-draw) (cons 'a2706 . (address)) store ((church-force (cons 'a2707 . (address)) store church-list) (cons 'a2708 . (address)) store 1 2 3))) ((church-force (cons 'a2709 . (address)) store church-proc) (cons 'a2710 . (address)) store ((church-force (cons 'a2711 . (address)) store church-uniform-draw) (cons 'a2712 . (address)) store ((church-force (cons 'a2713 . (address)) store church-list) (cons 'a2714 . (address)) store 1 2 3))))))))))) (lambda (address store church-x) (if (church-force (cons 'a2715 . (address)) store church-x) 1 0)) ((church-force (cons 'a2716 . (address)) store church-+) (cons 'a2717 . (address)) store ((church-force (cons 'a2718 . (address)) store church-*) (cons 'a2719 . (address)) store ((church-force (cons 'a2720 . (address)) store church-/) (cons 'a2721 . (address)) store 1 3) 0.8) ((church-force (cons 'a2722 . (address)) store church-*) (cons 'a2723 . (address)) store ((church-force (cons 'a2724 . (address)) store church-/) (cons 'a2725 . (address)) store 2 3) ((church-force (cons 'a2726 . (address)) store church-*) (cons 'a2727 . (address)) store 0.8 0.8))) church-error-tolerance "memoized flip with random argument, unconditioned.")) (church-force (cons 'a2728 . (address)) store ((church-force (cons 'a2729 . (address)) store church-check-test) (cons 'a2730 . (address)) store ((church-force (cons 'a2731 . (address)) store church-repeat) (cons 'a2732 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2733 . (address)) store church-mh-query) (cons 'a2734 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc (if (church-force (cons 'a2735 . (address)) store ((church-force (cons 'a2736 . (address)) store church-flip) (cons 'a2737 . (address)) store 0.7)) (lambda (address store church-x) ((church-force (cons 'a2738 . (address)) store church-flip) (cons 'a2739 . (address)) store 0.2)) (lambda (address store church-x) ((church-force (cons 'a2740 . (address)) store church-flip) (cons 'a2741 . (address)) store 0.8)))) (church-memproc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store church-proc))) ((church-force (cons 'a2742 . (address)) store church-pair) (cons 'a2743 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2744 . (address)) store church-and) (cons 'a2745 . (address)) store ((church-force (cons 'a2746 . (address)) store church-memproc) (cons 'a2747 . (address)) store 1) ((church-force (cons 'a2748 . (address)) store church-memproc) (cons 'a2749 . (address)) store 2))))))))) (lambda (address store church-x) (if (church-force (cons 'a2750 . (address)) store church-x) 1 0)) ((church-force (cons 'a2751 . (address)) store church-+) (cons 'a2752 . (address)) store ((church-force (cons 'a2753 . (address)) store church-*) (cons 'a2754 . (address)) store 0.7 0.2 0.2) ((church-force (cons 'a2755 . (address)) store church-*) (cons 'a2756 . (address)) store 0.3 0.8 0.8)) church-error-tolerance "memoized random procedure, unconditioned.")) (church-force (cons 'a2757 . (address)) store ((church-force (cons 'a2758 . (address)) store church-check-test) (cons 'a2759 . (address)) store ((church-force (cons 'a2760 . (address)) store church-repeat) (cons 'a2761 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2762 . (address)) store church-mh-query) (cons 'a2763 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-bit-flip (lambda (address store church-fidelity church-x) ((church-force (cons 'a2764 . (address)) store church-flip) (cons 'a2765 . (address)) store (if (church-force (cons 'a2766 . (address)) store church-x) church-fidelity ((church-force (cons 'a2767 . (address)) store church--) (cons 'a2768 . (address)) store 1 church-fidelity)))))) ((church-force (cons 'a2769 . (address)) store church-pair) (cons 'a2770 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2771 . (address)) store church-rejection-query) (cons 'a2772 . (address)) store (lambda (address store) (letrec ((church-a ((church-force (cons 'a2773 . (address)) store church-flip) (cons 'a2774 . (address)) store 0.7))) ((church-force (cons 'a2775 . (address)) store church-pair) (cons 'a2776 . (address)) store ((church-force (cons 'a2777 . (address)) store church-bit-flip) (cons 'a2778 . (address)) store 0.8 church-a) (lambda (address store) church-a)))))))))))) (lambda (address store church-x) (if (church-force (cons 'a2779 . (address)) store church-x) 1 0)) ((church-force (cons 'a2780 . (address)) store church-/) (cons 'a2781 . (address)) store ((church-force (cons 'a2782 . (address)) store church-*) (cons 'a2783 . (address)) store 0.7 0.8) ((church-force (cons 'a2784 . (address)) store church-+) (cons 'a2785 . (address)) store ((church-force (cons 'a2786 . (address)) store church-*) (cons 'a2787 . (address)) store 0.7 0.8) ((church-force (cons 'a2788 . (address)) store church-*) (cons 'a2789 . (address)) store 0.3 0.2))) church-error-tolerance "mh-query over rejection query for conditioned flip.")) (church-force (cons 'a2790 . (address)) store ((church-force (cons 'a2791 . (address)) store church-check-test) (cons 'a2792 . (address)) store ((church-force (cons 'a2793 . (address)) store church-repeat) (cons 'a2794 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2795 . (address)) store church-mh-query) (cons 'a2796 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a (if (church-force (cons 'a2797 . (address)) store ((church-force (cons 'a2798 . (address)) store church-flip) (cons 'a2799 . (address)) store 0.9)) ((church-force (cons 'a2800 . (address)) store church-first) (cons 'a2801 . (address)) store ((church-force (cons 'a2802 . (address)) store church-beta) (cons 'a2803 . (address)) store 1 5)) 0.7)) (church-b ((church-force (cons 'a2804 . (address)) store church-flip) (cons 'a2805 . (address)) store church-a))) ((church-force (cons 'a2806 . (address)) store church-pair) (cons 'a2807 . (address)) store church-b (lambda (address store) church-a))))))) (lambda (address store church-x) church-x) 0.417 church-error-tolerance "trans-dimensional.")) (church-force (cons 'a2808 . (address)) store ((church-force (cons 'a2809 . (address)) store church-check-test) (cons 'a2810 . (address)) store ((church-force (cons 'a2811 . (address)) store church-repeat) (cons 'a2812 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2813 . (address)) store church-mh-query) (cons 'a2814 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a (if (church-force (cons 'a2815 . (address)) store ((church-force (cons 'a2816 . (address)) store church-flip) (cons 'a2817 . (address)) store)) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store church-flip) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store church-flip))) (church-b ((church-force (cons 'a2818 . (address)) store church-a) (cons 'a2819 . (address)) store))) ((church-force (cons 'a2820 . (address)) store church-pair) (cons 'a2821 . (address)) store church-true (lambda (address store) church-b))))))) (lambda (address store church-x) (if (church-force (cons 'a2822 . (address)) store church-x) 1 0)) 0.5 church-error-tolerance "memoized flip in if branch (create/destroy memprocs), unconditioned.")) (church-force (cons 'a2823 . (address)) store ((church-force (cons 'a2824 . (address)) store church-check-test) (cons 'a2825 . (address)) store ((church-force (cons 'a2826 . (address)) store church-repeat) (cons 'a2827 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2828 . (address)) store church-mh-query) (cons 'a2829 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-bb ((church-force (cons 'a2830 . (address)) store church-make-dirichlet-discrete) (cons 'a2831 . (address)) store ((church-force (cons 'a2832 . (address)) store church-list) (cons 'a2833 . (address)) store 0.5 0.5 0.5)))) ((church-force (cons 'a2834 . (address)) store church-pair) (cons 'a2835 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2836 . (address)) store church-=) (cons 'a2837 . (address)) store ((church-force (cons 'a2838 . (address)) store church-bb) (cons 'a2839 . (address)) store) ((church-force (cons 'a2840 . (address)) store church-bb) (cons 'a2841 . (address)) store))))))))) (lambda (address store church-b) (if (church-force (cons 'a2842 . (address)) store church-b) 1 0)) ((church-force (cons 'a2843 . (address)) store church-/) (cons 'a2844 . (address)) store ((church-force (cons 'a2845 . (address)) store church-+) (cons 'a2846 . (address)) store 1 0.5) ((church-force (cons 'a2847 . (address)) store church-+) (cons 'a2848 . (address)) store 1 ((church-force (cons 'a2849 . (address)) store church-*) (cons 'a2850 . (address)) store 3 0.5))) church-error-tolerance "symmetric dirichlet-discrete, unconditioned.")) (church-force (cons 'a2851 . (address)) store ((church-force (cons 'a2852 . (address)) store church-check-test) (cons 'a2853 . (address)) store ((church-force (cons 'a2854 . (address)) store church-repeat) (cons 'a2855 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2856 . (address)) store church-mh-query) (cons 'a2857 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-bb ((church-force (cons 'a2858 . (address)) store church-make-dirichlet-discrete) (cons 'a2859 . (address)) store ((church-force (cons 'a2860 . (address)) store church-list) (cons 'a2861 . (address)) store 0.5 0.5)))) ((church-force (cons 'a2862 . (address)) store church-pair) (cons 'a2863 . (address)) store ((church-force (cons 'a2864 . (address)) store church-=) (cons 'a2865 . (address)) store 0 ((church-force (cons 'a2866 . (address)) store church-bb) (cons 'a2867 . (address)) store)) (lambda (address store) ((church-force (cons 'a2868 . (address)) store church-=) (cons 'a2869 . (address)) store 0 ((church-force (cons 'a2870 . (address)) store church-bb) (cons 'a2871 . (address)) store))))))))) (lambda (address store church-b) (if (church-force (cons 'a2872 . (address)) store church-b) 1 0)) ((church-force (cons 'a2873 . (address)) store church-/) (cons 'a2874 . (address)) store ((church-force (cons 'a2875 . (address)) store church-+) (cons 'a2876 . (address)) store 1 0.5) ((church-force (cons 'a2877 . (address)) store church-+) (cons 'a2878 . (address)) store 1 ((church-force (cons 'a2879 . (address)) store church-*) (cons 'a2880 . (address)) store 2 0.5))) church-error-tolerance "symmetric dirichlet-discrete, conditioned.")) (church-force (cons 'a2881 . (address)) store ((church-force (cons 'a2882 . (address)) store church-check-test) (cons 'a2883 . (address)) store ((church-force (cons 'a2884 . (address)) store church-repeat) (cons 'a2885 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2886 . (address)) store church-mh-query) (cons 'a2887 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-draw-type ((church-force (cons 'a2888 . (address)) store church-make-CRP) (cons 'a2889 . (address)) store church-crp-param)) (church-class ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2890 . (address)) store church-draw-type) (cons 'a2891 . (address)) store))))) ((church-force (cons 'a2892 . (address)) store church-pair) (cons 'a2893 . (address)) store ((church-force (cons 'a2894 . (address)) store church-eq?) (cons 'a2895 . (address)) store ((church-force (cons 'a2896 . (address)) store church-class) (cons 'a2897 . (address)) store 'bob) ((church-force (cons 'a2898 . (address)) store church-class) (cons 'a2899 . (address)) store 'jim)) (lambda (address store) ((church-force (cons 'a2900 . (address)) store church-eq?) (cons 'a2901 . (address)) store ((church-force (cons 'a2902 . (address)) store church-class) (cons 'a2903 . (address)) store 'bob) ((church-force (cons 'a2904 . (address)) store church-class) (cons 'a2905 . (address)) store 'mary))))))))) (lambda (address store church-x) (if (church-force (cons 'a2906 . (address)) store church-x) 1 0)) ((church-force (cons 'a2907 . (address)) store church-/) (cons 'a2908 . (address)) store 2.0 ((church-force (cons 'a2909 . (address)) store church-+) (cons 'a2910 . (address)) store 2.0 church-crp-param)) church-error-tolerance "CRP third customer at first table, conditioned on second customer at first table.")) (church-force (cons 'a2911 . (address)) store ((church-force (cons 'a2912 . (address)) store church-check-test) (cons 'a2913 . (address)) store ((church-force (cons 'a2914 . (address)) store church-repeat) (cons 'a2915 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2916 . (address)) store church-mh-query) (cons 'a2917 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-draw-type ((church-force (cons 'a2918 . (address)) store church-DPmem) (cons 'a2919 . (address)) store 1.0 church-gensym)) (church-class ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2920 . (address)) store church-draw-type) (cons 'a2921 . (address)) store))))) ((church-force (cons 'a2922 . (address)) store church-pair) (cons 'a2923 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2924 . (address)) store church-eq?) (cons 'a2925 . (address)) store ((church-force (cons 'a2926 . (address)) store church-class) (cons 'a2927 . (address)) store 'bob) ((church-force (cons 'a2928 . (address)) store church-class) (cons 'a2929 . (address)) store 'mary))))))))) (lambda (address store church-x) (if (church-force (cons 'a2930 . (address)) store church-x) 1 0)) 0.5 church-error-tolerance "DPmem of gensym, unconditioned.")) (church-force (cons 'a2931 . (address)) store ((church-force (cons 'a2932 . (address)) store church-check-test) (cons 'a2933 . (address)) store ((church-force (cons 'a2934 . (address)) store church-repeat) (cons 'a2935 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2936 . (address)) store church-mh-query) (cons 'a2937 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-draw-type ((church-force (cons 'a2938 . (address)) store church-make-CRP) (cons 'a2939 . (address)) store church-CRP-param)) (church-obs ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-type) ((church-force (cons 'a2940 . (address)) store church-make-symmetric-dirichlet-discrete) (cons 'a2941 . (address)) store 3 church-dirichlet-param))))) ((church-force (cons 'a2942 . (address)) store church-pair) (cons 'a2943 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2944 . (address)) store church-=) (cons 'a2945 . (address)) store ((church-force (cons 'a2946 . (address)) store church-sample) (cons 'a2947 . (address)) store ((church-force (cons 'a2948 . (address)) store church-obs) (cons 'a2949 . (address)) store ((church-force (cons 'a2950 . (address)) store church-draw-type) (cons 'a2951 . (address)) store))) ((church-force (cons 'a2952 . (address)) store church-sample) (cons 'a2953 . (address)) store ((church-force (cons 'a2954 . (address)) store church-obs) (cons 'a2955 . (address)) store ((church-force (cons 'a2956 . (address)) store church-draw-type) (cons 'a2957 . (address)) store))))))))))) (lambda (address store church-x) (if (church-force (cons 'a2958 . (address)) store church-x) 1 0)) ((church-force (cons 'a2959 . (address)) store church-+) (cons 'a2960 . (address)) store ((church-force (cons 'a2961 . (address)) store church-*) (cons 'a2962 . (address)) store ((church-force (cons 'a2963 . (address)) store church-/) (cons 'a2964 . (address)) store 1 ((church-force (cons 'a2965 . (address)) store church-+) (cons 'a2966 . (address)) store 1 church-CRP-param)) ((church-force (cons 'a2967 . (address)) store church-/) (cons 'a2968 . (address)) store ((church-force (cons 'a2969 . (address)) store church-+) (cons 'a2970 . (address)) store 1 church-dirichlet-param) ((church-force (cons 'a2971 . (address)) store church-+) (cons 'a2972 . (address)) store 1 ((church-force (cons 'a2973 . (address)) store church-*) (cons 'a2974 . (address)) store 3 church-dirichlet-param)))) ((church-force (cons 'a2975 . (address)) store church-*) (cons 'a2976 . (address)) store ((church-force (cons 'a2977 . (address)) store church-/) (cons 'a2978 . (address)) store church-CRP-param ((church-force (cons 'a2979 . (address)) store church-+) (cons 'a2980 . (address)) store 1 church-CRP-param)) ((church-force (cons 'a2981 . (address)) store church-/) (cons 'a2982 . (address)) store 1 3))) church-error-tolerance "varying numbers of xrps inside mem.")) "tests done!")))
./bher/program:./church/beam-learning.church~:;; (let* ([all-examples (map tree->program data)]
./bher/program:./church/beam-learning.church~: (let* ([literal-sexprs (map tree->program data)])
./bher/program:./church/factor-graph.church~:(define (tree->program tree)
./bher/program:./church/factor-graph.church~: (map tree->program (rest tree)))))
./bher/program:./church/factor-graph.church~:(define (tree->generative-program proc-code)
./bher/program:./church/factor-graph.church~: (list 'lambda '() (tree->program proc-code)))
./bher/program:./church/beam-learning.church:;; (let* ([all-examples (map tree->program data)]
./bher/program:./church/beam-learning.church: (let* ([literal-sexprs (map tree->program data)])
./bher/program:./church/factor-graph.church:(define (tree->program tree)
./bher/program:./church/factor-graph.church: (map tree->program (rest tree)))))
./bher/tests/test.church.ss:(define church-+ (lambda (address store . args) (apply + (map (lambda (a) (church-force address store a)) args))))(define church-list (lambda (address store . args) (apply list (map (lambda (a) (church-force address store a)) args))))(define church-<= (lambda (address store . args) (apply <= (map (lambda (a) (church-force address store a)) args))))(define church-- (lambda (address store . args) (apply - (map (lambda (a) (church-force address store a)) args))))(define church-equal? (lambda (address store . args) (apply equal? (map (lambda (a) (church-force address store a)) args))))(define church-< (lambda (address store . args) (apply < (map (lambda (a) (church-force address store a)) args))))(define church-/ (lambda (address store . args) (apply / (map (lambda (a) (church-force address store a)) args))))(define church-* (lambda (address store . args) (apply * (map (lambda (a) (church-force address store a)) args))))(define church-eq? (lambda (address store . args) (apply eq? (map (lambda (a) (church-force address store a)) args))))(define church-expt (lambda (address store . args) (apply expt (map (lambda (a) (church-force address store a)) args))))(define church-= (lambda (address store . args) (apply = (map (lambda (a) (church-force address store a)) args))))(define church-null? (lambda (address store . args) (apply null? (map (lambda (a) (church-force address store a)) args))))(define church-list-ref (lambda (address store . args) (apply list-ref (map (lambda (a) (church-force address store a)) args))))(define church-length (lambda (address store . args) (apply length (map (lambda (a) (church-force address store a)) args))))(define church->= (lambda (address store . args) (apply >= (map (lambda (a) (church-force address store a)) args))))(define church-append (lambda (address store . args) (apply append (map (lambda (a) (church-force address store a)) args))))(define church-lev-dist (lambda (address store . args) (apply lev-dist (map (lambda (a) (church-force address store a)) args))))(define church-list? (lambda (address store . args) (apply list? (map (lambda (a) (church-force address store a)) args))))(define church-display (lambda (address store . args) (apply display (map (lambda (a) (church-force address store a)) args))))(define church-second (lambda (address store . args) (apply second (map (lambda (a) (church-force address store a)) args))))(define church-random-real (lambda (address store . args) (apply random-real (map (lambda (a) (church-force address store a)) args))))(define church-car (lambda (address store . args) (apply car (map (lambda (a) (church-force address store a)) args))))(define church-log (lambda (address store . args) (apply log (map (lambda (a) (church-force address store a)) args))))(define church-exp (lambda (address store . args) (apply exp (map (lambda (a) (church-force address store a)) args))))(define church-sample-dirichlet (lambda (address store . args) (apply sample-dirichlet (map (lambda (a) (church-force address store a)) args))))(define church-dirichlet-lnpdf (lambda (address store . args) (apply dirichlet-lnpdf (map (lambda (a) (church-force address store a)) args))))(define church-discrete-sampler (lambda (address store . args) (apply discrete-sampler (map (lambda (a) (church-force address store a)) args))))(define church-> (lambda (address store . args) (apply > (map (lambda (a) (church-force address store a)) args))))(define church-discrete-pdf (lambda (address store . args) (apply discrete-pdf (map (lambda (a) (church-force address store a)) args))))(define church-iota (lambda (address store . args) (apply iota (map (lambda (a) (church-force address store a)) args))))(define church-random-integer (lambda (address store . args) (apply random-integer (map (lambda (a) (church-force address store a)) args))))(define church-integer? (lambda (address store . args) (apply integer? (map (lambda (a) (church-force address store a)) args))))(define church-sample-gaussian (lambda (address store . args) (apply sample-gaussian (map (lambda (a) (church-force address store a)) args))))(define church-gaussian-lnpdf (lambda (address store . args) (apply gaussian-lnpdf (map (lambda (a) (church-force address store a)) args))))(define church-scheme-gensym (lambda (address store . args) (apply scheme-gensym (map (lambda (a) (church-force address store a)) args))))(define church-lnfact (lambda (address store . args) (apply lnfact (map (lambda (a) (church-force address store a)) args))))(define church-take (lambda (address store . args) (apply take (map (lambda (a) (church-force address store a)) args))))(define church-drop (lambda (address store . args) (apply drop (map (lambda (a) (church-force address store a)) args))))(define church-make-list (lambda (address store . args) (apply make-list (map (lambda (a) (church-force address store a)) args))))(define church-error (lambda (address store . args) (apply error (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->with-proposer-calls (lambda (address store . args) (apply mcmc-state->with-proposer-calls (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->xrp-draws (lambda (address store . args) (apply mcmc-state->xrp-draws (map (lambda (a) (church-force address store a)) args))))(define church-addbox-empty? (lambda (address store . args) (apply addbox-empty? (map (lambda (a) (church-force address store a)) args))))(define church-addbox->alist (lambda (address store . args) (apply addbox->alist (map (lambda (a) (church-force address store a)) args))))(define church-counterfactual-update (lambda (address store . args) (apply counterfactual-update (map (lambda (a) (church-force address store a)) args))))(define church-reset-with-proposer-calls (lambda (address store . args) (apply reset-with-proposer-calls (map (lambda (a) (church-force address store a)) args))))(define church-third (lambda (address store . args) (apply third (map (lambda (a) (church-force address store a)) args))))(define church-with-proposer-call-proposer (lambda (address store . args) (apply with-proposer-call-proposer (map (lambda (a) (church-force address store a)) args))))(define church-lazy-list->all-list (lambda (address store . args) (apply lazy-list->all-list (map (lambda (a) (church-force address store a)) args))))(define church-with-proposer-call-value (lambda (address store . args) (apply with-proposer-call-value (map (lambda (a) (church-force address store a)) args))))(define church-with-proposer-call-address (lambda (address store . args) (apply with-proposer-call-address (map (lambda (a) (church-force address store a)) args))))(define church-compute-depth (lambda (address store . args) (apply compute-depth (map (lambda (a) (church-force address store a)) args))))(define church-with-proposer-call-proc (lambda (address store . args) (apply with-proposer-call-proc (map (lambda (a) (church-force address store a)) args))))(define church-list->lazy-list (lambda (address store . args) (apply list->lazy-list (map (lambda (a) (church-force address store a)) args))))(define church-lazy-equal? (lambda (address store . args) (apply lazy-equal? (map (lambda (a) (church-force address store a)) args))))(define church-lazy-list->list (lambda (address store . args) (apply lazy-list->list (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-ticks (lambda (address store . args) (apply xrp-draw-ticks (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-value (lambda (address store . args) (apply xrp-draw-value (map (lambda (a) (church-force address store a)) args))))(define church-make-xrp-draw (lambda (address store . args) (apply make-xrp-draw (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-name (lambda (address store . args) (apply xrp-draw-name (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-proposer (lambda (address store . args) (apply xrp-draw-proposer (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-score (lambda (address store . args) (apply xrp-draw-score (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-support (lambda (address store . args) (apply xrp-draw-support (map (lambda (a) (church-force address store a)) args))))(define church-xrp-draw-address (lambda (address store . args) (apply xrp-draw-address (map (lambda (a) (church-force address store a)) args))))(define church-drop-right (lambda (address store . args) (apply drop-right (map (lambda (a) (church-force address store a)) args))))(define church-addbox-size (lambda (address store . args) (apply addbox-size (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->score (lambda (address store . args) (apply mcmc-state->score (map (lambda (a) (church-force address store a)) args))))(define church-make-mcmc-state (lambda (address store . args) (apply make-mcmc-state (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->store (lambda (address store . args) (apply mcmc-state->store (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->address (lambda (address store . args) (apply mcmc-state->address (map (lambda (a) (church-force address store a)) args))))(define church-add-into-addbox (lambda (address store . args) (apply add-into-addbox (map (lambda (a) (church-force address store a)) args))))(define church-make-addbox (lambda (address store . args) (apply make-addbox (map (lambda (a) (church-force address store a)) args))))(define church-make-with-proposer-call (lambda (address store . args) (apply make-with-proposer-call (map (lambda (a) (church-force address store a)) args))))(define church-mcmc-state->query-value (lambda (address store . args) (apply mcmc-state->query-value (map (lambda (a) (church-force address store a)) args))))(define church-min (lambda (address store . args) (apply min (map (lambda (a) (church-force address store a)) args))))(define church-current-date (lambda (address store . args) (apply current-date (map (lambda (a) (church-force address store a)) args))))(define church-pretty-print (lambda (address store . args) (apply pretty-print (map (lambda (a) (church-force address store a)) args))))(define church-nan? (lambda (address store . args) (apply nan? (map (lambda (a) (church-force address store a)) args))))(define church-member (lambda (address store . args) (apply member (map (lambda (a) (church-force address store a)) args))))(define church-lazy-list-size (lambda (address store . args) (apply lazy-list-size (map (lambda (a) (church-force address store a)) args))))(define church-exact->inexact (lambda (address store . args) (apply exact->inexact (map (lambda (a) (church-force address store a)) args))))(define church-max (lambda (address store . args) (apply max (map (lambda (a) (church-force address store a)) args))))(define church-lazy-pair (lambda (address store . args) (apply lazy-pair (map (lambda (a) (church-force address store a)) args))))(define church-symbol? (lambda (address store . args) (apply symbol? (map (lambda (a) (church-force address store a)) args))))(define church-time-second (lambda (address store . args) (apply time-second (map (lambda (a) (church-force address store a)) args))))(define church-time-difference (lambda (address store . args) (apply time-difference (map (lambda (a) (church-force address store a)) args))))(define church-current-time (lambda (address store . args) (apply current-time (map (lambda (a) (church-force address store a)) args))))(define church-not (lambda (address store . args) (apply not (map (lambda (a) (church-force address store a)) args))))(define church-abs (lambda (address store . args) (apply abs (map (lambda (a) (church-force address store a)) args))))(define church-pair? (lambda (address store . args) (apply pair? (map (lambda (a) (church-force address store a)) args))))(define church-size (lambda (address store . args) (apply size (map (lambda (a) (church-force address store a)) args))))(define church-tree->program (lambda (address store . args) (apply tree->program (map (lambda (a) (church-force address store a)) args))))(define church-unique-programs (lambda (address store . args) (apply unique-programs (map (lambda (a) (church-force address store a)) args))))(define church-compressions (lambda (address store . args) (apply compressions (map (lambda (a) (church-force address store a)) args))))(define church-max-take (lambda (address store . args) (apply max-take (map (lambda (a) (church-force address store a)) args))))(define church-program->sexpr (lambda (address store . args) (apply program->sexpr (map (lambda (a) (church-force address store a)) args))))(define (church-apply address store proc args) (apply (church-force address store proc) address store (church-force address store args)))(define (church-eval addr store sexpr) ((eval `(letrec ,(map (lambda (def) (if (symbol? (cadr def)) (list (cadr def) (caddr def)) `(,(car (cadr def)) (lambda ,(cdr (cadr def)) ,@(cddr def))))) (compile (list sexpr) '())) church-main) (environment '(rnrs) '(abstract) '(lazy) '(util) '(sym) '(rnrs mutable-pairs) '(_srfi :1) '(rename (church external math-env) (sample-discrete discrete-sampler)) '(rename (only (ikarus) gensym pretty-print exact->inexact) (gensym scheme-gensym)) '(_srfi :19) '(church compiler) '(rnrs eval))) addr store))(define (church-get-current-environment address store) (error 'gce "gce not implemented"))(define church-true #t)(define church-false #f)(define church-pair (lambda (address store #{g1 |gwkmXxkhP$9FRn!g|} #{g2 |FXlDAEv>DPSb!3&<|}) (cons (church-force address store #{g1 |gwkmXxkhP$9FRn!g|}) (church-force address store #{g2 |FXlDAEv>DPSb!3&<|}))))(define church-first (lambda (address store #{g3 |$lYWoSDF0PSpE?Od|}) (car (church-force address store #{g3 |$lYWoSDF0PSpE?Od|}))))(define church-rest (lambda (address store #{g4 |/HlUJ>4E=Dl4>u>F|}) (cdr (church-force address store #{g4 |/HlUJ>4E=Dl4>u>F|}))))(define (church-or address store . args) (fold (lambda (x y) (or x y)) #f args))(define (church-and address store . args) (fold (lambda (x y) (and x y)) #t args))(define (lev-dist) (error "lev-dist not implemented"))(define (church-force address store val) (if (and (pair? val) (eq? (car val) 'delayed)) (church-force address store ((cadr val) address store)) val))(define (make-store xrp-draws xrp-stats score tick enumeration-flag with-proposer-calls) (let () (list xrp-draws xrp-stats score tick enumeration-flag with-proposer-calls)))(define (make-empty-store) (make-store (make-addbox) (make-addbox) 0.0 0 #f (make-addbox)))(define store->xrp-draws first)(define store->xrp-stats second)(define store->score third)(define store->tick fourth)(define store->enumeration-flag fifth)(define store->with-proposer-calls sixth)(define (church-reset-store-xrp-draws address store) (return-with-store store (make-store (make-addbox) (store->xrp-stats store) (store->score store) (store->tick store) (store->enumeration-flag store) (store->with-proposer-calls store)) 'foo))(define (reset-with-proposer-calls state) (let* ((store (mcmc-state->store state))) (make-mcmc-state (make-store (store->xrp-draws store) (store->xrp-stats store) (store->score store) (store->tick store) (store->enumeration-flag store) (make-addbox)) (mcmc-state->value state) (mcmc-state->address state))))(define (return-with-store store new-store value) (begin (set-car! store (car new-store)) (set-cdr! store (cdr new-store)) value))(define alist-insert (lambda (addbox address info) (cons (cons address info) addbox)))(define alist-pop (lambda (addbox address) (if (null? addbox) (cons #f '()) (if (equal? address (caar addbox)) (cons (cdar addbox) (cdr addbox)) (let ((ret (alist-pop (cdr addbox) address))) (cons (car ret) (cons (car addbox) (cdr ret))))))))(define (make-empty-alist) '())(define alist-size length)(define alist-empty? null?)(define (add/replace-into-addbox addbox address new-entry) (let* ((present (pull-outof-addbox addbox address))) (if (equal? present '(#f)) (add-into-addbox addbox address new-entry) (add-into-addbox (rest present) address new-entry))))(define add-into-addbox alist-insert)(define pull-outof-addbox alist-pop)(define make-addbox make-empty-alist)(define addbox->alist (lambda (addbox) addbox))(define alist->addbox (lambda (alist) alist))(define addbox-size alist-size)(define addbox-empty? alist-empty?)(define (make-with-proposer-call address value proposer-thunk proc) (list address value proposer-thunk proc))(define with-proposer-call-address first)(define with-proposer-call-value second)(define with-proposer-call-proposer third)(define with-proposer-call-proc fourth)(define (church-with-proposer address store proc proposer) (lambda (call-address store) (let* ((with-proposer-calls (store->with-proposer-calls store)) (value (proc call-address store)) (new-call (make-with-proposer-call call-address value proposer proc)) (new-proposer-calls (add/replace-into-addbox with-proposer-calls call-address new-call)) (new-store (make-store (store->xrp-draws store) (store->xrp-stats store) (store->score store) (store->tick store) (store->enumeration-flag store) new-proposer-calls))) (return-with-store store new-store value))))(define (make-xrp-draw address value xrp-name proposer-thunk ticks score support) (list address value xrp-name proposer-thunk ticks score support))(define xrp-draw-address first)(define xrp-draw-value second)(define xrp-draw-name third)(define xrp-draw-proposer fourth)(define xrp-draw-ticks fifth)(define xrp-draw-score sixth)(define xrp-draw-support seventh)(define (church-make-xrp address store xrp-name sample incr-stats decr-stats score init-stats hyperparams proposer support) (let* ((xrp-name (church-force address store xrp-name)) (sample (church-force address store sample)) (incr-stats (church-force address store incr-stats)) (decr-stats (church-force address store decr-stats)) (score (church-force address store score)) (init-stats (church-force address store init-stats)) (hyperparams (church-force address store hyperparams)) (proposer (church-force address store proposer)) (support (church-force address store support))) (return-with-store store (let* ((ret (pull-outof-addbox (store->xrp-stats store) address)) (oldstats (car ret)) (reststatsbox (cdr ret)) (tick (store->tick store))) (if (and (not (eq? #f oldstats)) (= tick (second oldstats))) store (make-store (store->xrp-draws store) (add-into-addbox reststatsbox address (list init-stats tick)) (store->score store) tick (store->enumeration-flag store) (store->with-proposer-calls store)))) (let* ((xrp-address address) (proposer (if (null? proposer) (lambda (address store operands old-value) (let* ((dec (decr-stats address store old-value (caar (pull-outof-addbox (store->xrp-stats store) xrp-address)) hyperparams operands)) (decstats (second dec)) (decscore (third dec)) (inc (sample address store decstats hyperparams operands)) (proposal-value (first inc)) (incscore (third inc))) (list proposal-value incscore decscore))) proposer))) (lambda (address store . args) (let* ((tmp (pull-outof-addbox (store->xrp-draws store) address)) (old-xrp-draw (car tmp)) (rest-xrp-draws (cdr tmp)) (old-tick (if (eq? #f old-xrp-draw) '() (first (xrp-draw-ticks old-xrp-draw))))) (if (equal? (store->tick store) old-tick) (let () (return-with-store store store (xrp-draw-value old-xrp-draw))) (let* ((tmp (pull-outof-addbox (store->xrp-stats store) xrp-address)) (stats (caar tmp)) (rest-statsbox (cdr tmp)) (support-vals (if (null? support) '() (support address store stats hyperparams args))) (tmp (if (eq? #f old-xrp-draw) (if (store->enumeration-flag store) (incr-stats address (cons (first store) (cdr store)) (first support-vals) stats hyperparams args) (sample address (cons (first store) (cdr store)) stats hyperparams args)) (incr-stats address (cons (first store) (cdr store)) (xrp-draw-value old-xrp-draw) stats hyperparams args))) (value (first tmp)) (new-stats (list (second tmp) (store->tick store))) (incr-score (third tmp)) (new-xrp-draw (make-xrp-draw address value xrp-name (lambda (address store state) (let ((store (cons (first (mcmc-state->store state)) (cdr (mcmc-state->store state))))) (church-apply (mcmc-state->address state) store proposer (list args value)))) (cons (store->tick store) old-tick) incr-score support-vals)) (new-store (make-store (add-into-addbox rest-xrp-draws address new-xrp-draw) (add-into-addbox rest-statsbox xrp-address new-stats) (+ (store->score store) incr-score) (store->tick store) (store->enumeration-flag store) (store->with-proposer-calls store)))) (return-with-store store new-store value)))))))))(define (make-mcmc-state store value address) (list store value address))(define (add-proc-to-state state proc) (append state (list proc)))(define mcmc-state->store first)(define mcmc-state->value second)(define mcmc-state->address third)(define (mcmc-state->xrp-draws state) (store->xrp-draws (mcmc-state->store state)))(define (mcmc-state->with-proposer-calls state) (store->with-proposer-calls (mcmc-state->store state)))(define (mcmc-state->score state) (if (not (eq? #t (first (second state)))) -inf.0 (store->score (mcmc-state->store state))))(define (mcmc-state->query-value state) (let ((store (cons (first (mcmc-state->store state)) (cdr (mcmc-state->store state))))) (church-apply (mcmc-state->address state) store (cdr (second state)) '())))(define (church-make-initial-mcmc-state address store) (make-mcmc-state (make-store (make-addbox) (store->xrp-stats store) 0.0 0 (store->enumeration-flag store) (make-addbox)) 'init-val address))(define (church-make-addressed-initial-mcmc-state address store start-address) (make-mcmc-state (make-store (store->xrp-draws store) (store->xrp-stats store) 0.0 (store->tick store) (store->enumeration-flag store) (store->with-proposer-calls store)) 'init-val start-address))(define (church-make-initial-enumeration-state address store) (make-mcmc-state (make-store '() (store->xrp-stats store) (store->score store) (store->tick store) #t (make-addbox)) 'init-val address))(define (add-interventions interv xrps) (let* ((new-addbox (pull-outof-addbox xrps (xrp-draw-address (first interv)))) (new-addbox (if (eq? (first new-addbox) #f) xrps (cdr new-addbox)))) (add-into-addbox new-addbox (xrp-draw-address (first interv)) (make-xrp-draw (xrp-draw-address (first interv)) (cdr interv) (xrp-draw-name (first interv)) (xrp-draw-proposer (first interv)) (xrp-draw-ticks (first interv)) 'dummy-score (xrp-draw-support (first interv))))))(define (counterfactual-update state nfqp . interventions) (let* ((new-tick (+ 1 (store->tick (mcmc-state->store state)))) (interv-store (make-store (fold add-interventions (store->xrp-draws (mcmc-state->store state)) interventions) (store->xrp-stats (mcmc-state->store state)) 0.0 new-tick (store->enumeration-flag (mcmc-state->store state)) (store->with-proposer-calls (mcmc-state->store state)))) (ret (list (church-apply (mcmc-state->address state) interv-store nfqp '()) interv-store)) (value (first ret)) (new-store (second ret)) (ret2 (if (store->enumeration-flag new-store) (list new-store 0) (clean-store new-store))) (new-store (first ret2)) (cd-bw/fw (second ret2)) (proposal-state (make-mcmc-state new-store value (mcmc-state->address state)))) (list proposal-state cd-bw/fw)))(define (clean-store store) (let* ((state-tick (store->tick store)) (draws-bw/fw (let loop ((draws (addbox->alist (store->xrp-draws store))) (used-draws '()) (bw/fw 0.0)) (if (null? draws) (list used-draws bw/fw) (if (= (first (xrp-draw-ticks (cdar draws))) state-tick) (if (null? (cdr (xrp-draw-ticks (cdar draws)))) (loop (cdr draws) (cons (car draws) used-draws) (- bw/fw (xrp-draw-score (cdar draws)))) (loop (cdr draws) (cons (car draws) used-draws) bw/fw)) (loop (cdr draws) used-draws (+ bw/fw (xrp-draw-score (cdar draws))))))))) (list (make-store (alist->addbox (first draws-bw/fw)) (store->xrp-stats store) (store->score store) (store->tick store) (store->enumeration-flag store) (store->with-proposer-calls store)) (second draws-bw/fw))))(define (church-main address store) (letrec ((church-sample (lambda (address store church-thunk) ((church-force (cons 'a1 . (address)) store church-thunk) (cons 'a2 . (address)) store))) (church-uniform-draw (lambda (address store church-lst) (if (church-force (cons 'a3 . (address)) store ((church-force (cons 'a4 . (address)) store church-null?) (cons 'a5 . (address)) store church-lst)) '() ((church-force (cons 'a6 . (address)) store church-list-ref) (cons 'a7 . (address)) store church-lst ((church-force (cons 'a8 . (address)) store church-sample-integer) (cons 'a9 . (address)) store ((church-force (cons 'a10 . (address)) store church-length) (cons 'a11 . (address)) store church-lst)))))) (church-safe-uniform-draw (lambda (address store church-lst) (if (church-force (cons 'a12 . (address)) store ((church-force (cons 'a13 . (address)) store church-null?) (cons 'a14 . (address)) store church-lst)) '() ((church-force (cons 'a15 . (address)) store (lambda (address store church-n) (if (church-force (cons 'a16 . (address)) store ((church-force (cons 'a17 . (address)) store church-or) (cons 'a18 . (address)) store ((church-force (cons 'a19 . (address)) store church-<) (cons 'a20 . (address)) store church-n 0) ((church-force (cons 'a21 . (address)) store church->=) (cons 'a22 . (address)) store church-n ((church-force (cons 'a23 . (address)) store church-length) (cons 'a24 . (address)) store church-lst)))) ((church-force (cons 'a25 . (address)) store church-list-ref) (cons 'a26 . (address)) store church-lst 0) ((church-force (cons 'a27 . (address)) store church-list-ref) (cons 'a28 . (address)) store church-lst church-n)))) (cons 'a29 . (address)) store ((church-force (cons 'a30 . (address)) store church-sample-integer) (cons 'a31 . (address)) store ((church-force (cons 'a32 . (address)) store church-length) (cons 'a33 . (address)) store church-lst)))))) (church-all (lambda (address store church-lst) ((church-force (cons 'a34 . (address)) store church-apply) (cons 'a35 . (address)) store church-and church-lst))) (church-any (lambda (address store church-lst) ((church-force (cons 'a36 . (address)) store church-apply) (cons 'a37 . (address)) store church-or church-lst))) (church-product (lambda (address store church-lst) ((church-force (cons 'a38 . (address)) store church-apply) (cons 'a39 . (address)) store church-* church-lst))) (church-sum (lambda (address store church-lst) ((church-force (cons 'a40 . (address)) store church-apply) (cons 'a41 . (address)) store church-+ church-lst))) (church-repeat (lambda (address store church-N church-proc) (if (church-force (cons 'a42 . (address)) store ((church-force (cons 'a43 . (address)) store church-=) (cons 'a44 . (address)) store church-N 0)) '() ((church-force (cons 'a45 . (address)) store church-pair) (cons 'a46 . (address)) store ((church-force (cons 'a47 . (address)) store church-proc) (cons 'a48 . (address)) store) ((church-force (cons 'a49 . (address)) store church-repeat) (cons 'a50 . (address)) store ((church-force (cons 'a51 . (address)) store church--) (cons 'a52 . (address)) store church-N 1) church-proc))))) (church-for-each (lambda (address store church-proc church-lst) (if (church-force (cons 'a53 . (address)) store ((church-force (cons 'a54 . (address)) store church-null?) (cons 'a55 . (address)) store church-lst)) '() (begin (church-force (cons 'a56 . (address)) store ((church-force (cons 'a57 . (address)) store church-proc) (cons 'a58 . (address)) store ((church-force (cons 'a59 . (address)) store church-first) (cons 'a60 . (address)) store church-lst))) ((church-force (cons 'a61 . (address)) store church-for-each) (cons 'a62 . (address)) store church-proc ((church-force (cons 'a63 . (address)) store church-rest) (cons 'a64 . (address)) store church-lst)))))) (church-fold (lambda (address store church-proc church-init . church-lsts) (if (church-force (cons 'a65 . (address)) store ((church-force (cons 'a66 . (address)) store church-null?) (cons 'a67 . (address)) store ((church-force (cons 'a68 . (address)) store church-first) (cons 'a69 . (address)) store church-lsts))) church-init ((church-force (cons 'a70 . (address)) store church-apply) (cons 'a71 . (address)) store church-fold ((church-force (cons 'a72 . (address)) store church-pair) (cons 'a73 . (address)) store church-proc ((church-force (cons 'a74 . (address)) store church-pair) (cons 'a75 . (address)) store ((church-force (cons 'a76 . (address)) store church-apply) (cons 'a77 . (address)) store church-proc ((church-force (cons 'a78 . (address)) store church-append) (cons 'a79 . (address)) store ((church-force (cons 'a80 . (address)) store church-single-map) (cons 'a81 . (address)) store church-first church-lsts) ((church-force (cons 'a82 . (address)) store church-list) (cons 'a83 . (address)) store church-init))) ((church-force (cons 'a84 . (address)) store church-single-map) (cons 'a85 . (address)) store church-rest church-lsts))))))) (church-reverse (lambda (address store church-lst) ((church-force (cons 'a86 . (address)) store church-fold) (cons 'a87 . (address)) store church-pair '() church-lst))) (church-map (lambda (address store church-proc . church-lsts) (if (church-force (cons 'a88 . (address)) store ((church-force (cons 'a89 . (address)) store church-null?) (cons 'a90 . (address)) store ((church-force (cons 'a91 . (address)) store church-rest) (cons 'a92 . (address)) store church-lsts))) ((church-force (cons 'a93 . (address)) store church-single-map) (cons 'a94 . (address)) store church-proc ((church-force (cons 'a95 . (address)) store church-first) (cons 'a96 . (address)) store church-lsts)) ((church-force (cons 'a97 . (address)) store church-multi-map) (cons 'a98 . (address)) store church-proc church-lsts)))) (church-single-map (lambda (address store church-proc church-lst) (if (church-force (cons 'a99 . (address)) store ((church-force (cons 'a100 . (address)) store church-null?) (cons 'a101 . (address)) store church-lst)) '() ((church-force (cons 'a102 . (address)) store church-pair) (cons 'a103 . (address)) store ((church-force (cons 'a104 . (address)) store church-proc) (cons 'a105 . (address)) store ((church-force (cons 'a106 . (address)) store church-first) (cons 'a107 . (address)) store church-lst)) ((church-force (cons 'a108 . (address)) store church-map) (cons 'a109 . (address)) store church-proc ((church-force (cons 'a110 . (address)) store church-rest) (cons 'a111 . (address)) store church-lst)))))) (church-multi-map (lambda (address store church-proc church-lsts) (if (church-force (cons 'a112 . (address)) store ((church-force (cons 'a113 . (address)) store church-null?) (cons 'a114 . (address)) store ((church-force (cons 'a115 . (address)) store church-first) (cons 'a116 . (address)) store church-lsts))) '() ((church-force (cons 'a117 . (address)) store church-pair) (cons 'a118 . (address)) store ((church-force (cons 'a119 . (address)) store church-apply) (cons 'a120 . (address)) store church-proc ((church-force (cons 'a121 . (address)) store church-single-map) (cons 'a122 . (address)) store church-first church-lsts)) ((church-force (cons 'a123 . (address)) store church-multi-map) (cons 'a124 . (address)) store church-proc ((church-force (cons 'a125 . (address)) store church-single-map) (cons 'a126 . (address)) store church-rest church-lsts)))))) (church-many-map (lambda (address store church-proc . church-lsts) ((church-force (cons 'a127 . (address)) store church-multi-map) (cons 'a128 . (address)) store church-proc church-lsts))) (church-filter (lambda (address store church-pred church-lst) (if (church-force (cons 'a129 . (address)) store ((church-force (cons 'a130 . (address)) store church-null?) (cons 'a131 . (address)) store church-lst)) '() (if (church-force (cons 'a132 . (address)) store ((church-force (cons 'a133 . (address)) store church-pred) (cons 'a134 . (address)) store ((church-force (cons 'a135 . (address)) store church-first) (cons 'a136 . (address)) store church-lst))) ((church-force (cons 'a137 . (address)) store church-pair) (cons 'a138 . (address)) store ((church-force (cons 'a139 . (address)) store church-first) (cons 'a140 . (address)) store church-lst) ((church-force (cons 'a141 . (address)) store church-filter) (cons 'a142 . (address)) store church-pred ((church-force (cons 'a143 . (address)) store church-rest) (cons 'a144 . (address)) store church-lst))) ((church-force (cons 'a145 . (address)) store church-filter) (cons 'a146 . (address)) store church-pred ((church-force (cons 'a147 . (address)) store church-rest) (cons 'a148 . (address)) store church-lst)))))) (church-list-index (lambda (address store church-pred church-lst . church-i) (if (church-force (cons 'a149 . (address)) store ((church-force (cons 'a150 . (address)) store church-null?) (cons 'a151 . (address)) store church-lst)) church-false ((church-force (cons 'a152 . (address)) store (lambda (address store church-i) (if (church-force (cons 'a153 . (address)) store ((church-force (cons 'a154 . (address)) store church-pred) (cons 'a155 . (address)) store ((church-force (cons 'a156 . (address)) store church-first) (cons 'a157 . (address)) store church-lst))) church-i ((church-force (cons 'a158 . (address)) store church-list-index) (cons 'a159 . (address)) store church-pred ((church-force (cons 'a160 . (address)) store church-rest) (cons 'a161 . (address)) store church-lst) ((church-force (cons 'a162 . (address)) store church-+) (cons 'a163 . (address)) store church-i 1))))) (cons 'a164 . (address)) store (if (church-force (cons 'a165 . (address)) store ((church-force (cons 'a166 . (address)) store church-null?) (cons 'a167 . (address)) store church-i)) 0 ((church-force (cons 'a168 . (address)) store church-first) (cons 'a169 . (address)) store church-i)))))) (church-zip (lambda (address store . church-lists) ((church-force (cons 'a170 . (address)) store church-multi-map) (cons 'a171 . (address)) store church-list church-lists))) (church-rejection-query (lambda (address store church-nfqp) ((church-force (cons 'a172 . (address)) store (lambda (address store church-val) (if (church-force (cons 'a173 . (address)) store ((church-force (cons 'a174 . (address)) store church-first) (cons 'a175 . (address)) store church-val)) ((church-force (cons 'a176 . (address)) store ((church-force (cons 'a177 . (address)) store church-rest) (cons 'a178 . (address)) store church-val)) (cons 'a179 . (address)) store) ((church-force (cons 'a180 . (address)) store church-rejection-query) (cons 'a181 . (address)) store church-nfqp)))) (cons 'a182 . (address)) store ((church-force (cons 'a183 . (address)) store church-nfqp) (cons 'a184 . (address)) store)))) (church-discrete church-sample-discrete) (church-multinomial (lambda (address store church-vals church-probs) ((church-force (cons 'a185 . (address)) store church-list-ref) (cons 'a186 . (address)) store church-vals ((church-force (cons 'a187 . (address)) store church-discrete) (cons 'a188 . (address)) store church-probs)))) (church-beta (lambda (address store church-a church-b) ((church-force (cons 'a189 . (address)) store church-dirichlet) (cons 'a190 . (address)) store ((church-force (cons 'a191 . (address)) store church-list) (cons 'a192 . (address)) store church-a church-b)))) (church-make-GEM (lambda (address store church-alpha) ((church-force (cons 'a193 . (address)) store (lambda (address store church-sticks) (lambda (address store) ((church-force (cons 'a194 . (address)) store church-pick-a-stick) (cons 'a195 . (address)) store church-sticks 1)))) (cons 'a196 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a197 . (address)) store church-beta) (cons 'a198 . (address)) store 1.0 church-alpha)))))) (church-pick-a-stick (lambda (address store church-sticks church-J) (if (church-force (cons 'a199 . (address)) store ((church-force (cons 'a200 . (address)) store church-flip) (cons 'a201 . (address)) store ((church-force (cons 'a202 . (address)) store church-sticks) (cons 'a203 . (address)) store church-J))) church-J ((church-force (cons 'a204 . (address)) store church-pick-a-stick) (cons 'a205 . (address)) store church-sticks ((church-force (cons 'a206 . (address)) store church-+) (cons 'a207 . (address)) store church-J 1))))) (church-sticky-DPmem (lambda (address store church-alpha church-proc) ((church-force (cons 'a208 . (address)) store (lambda (address store church-augmented-proc church-crps) (lambda (address store . church-argsin) ((church-force (cons 'a209 . (address)) store church-augmented-proc) (cons 'a210 . (address)) store church-argsin ((church-force (cons 'a211 . (address)) store ((church-force (cons 'a212 . (address)) store church-crps) (cons 'a213 . (address)) store church-argsin)) (cons 'a214 . (address)) store))))) (cons 'a215 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args church-part) ((church-force (cons 'a216 . (address)) store church-apply) (cons 'a217 . (address)) store church-proc church-args))) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args) ((church-force (cons 'a218 . (address)) store church-make-GEM) (cons 'a219 . (address)) store church-alpha)))))) (church-make-PYP (lambda (address store church-a church-b) ((church-force (cons 'a220 . (address)) store (lambda (address store church-sticks) (lambda (address store) ((church-force (cons 'a221 . (address)) store church-pick-a-stick) (cons 'a222 . (address)) store church-sticks 1)))) (cons 'a223 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a224 . (address)) store church-beta) (cons 'a225 . (address)) store ((church-force (cons 'a226 . (address)) store church--) (cons 'a227 . (address)) store 1.0 church-a) ((church-force (cons 'a228 . (address)) store church-+) (cons 'a229 . (address)) store church-b ((church-force (cons 'a230 . (address)) store church-*) (cons 'a231 . (address)) store church-a church-x)))))))) (church-PYmem (lambda (address store church-a church-b church-proc) ((church-force (cons 'a232 . (address)) store (lambda (address store church-augmented-proc church-crps) (lambda (address store . church-argsin) ((church-force (cons 'a233 . (address)) store church-augmented-proc) (cons 'a234 . (address)) store church-argsin ((church-force (cons 'a235 . (address)) store ((church-force (cons 'a236 . (address)) store church-crps) (cons 'a237 . (address)) store church-argsin)) (cons 'a238 . (address)) store))))) (cons 'a239 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args church-part) ((church-force (cons 'a240 . (address)) store church-apply) (cons 'a241 . (address)) store church-proc church-args))) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args) ((church-force (cons 'a242 . (address)) store church-make-PYP) (cons 'a243 . (address)) store church-a church-b)))))) (church-noisy-lev-list-equal? (lambda (address store church-list1 church-list2 church-coupling) (if (church-force (cons 'a244 . (address)) store ((church-force (cons 'a245 . (address)) store church-=) (cons 'a246 . (address)) store 0.0 church-coupling)) ((church-force (cons 'a247 . (address)) store church-equal?) (cons 'a248 . (address)) store church-list1 church-list2) ((church-force (cons 'a249 . (address)) store church-flip) (cons 'a250 . (address)) store ((church-force (cons 'a251 . (address)) store church-expt) (cons 'a252 . (address)) store church-coupling ((church-force (cons 'a253 . (address)) store church-lev-dist) (cons 'a254 . (address)) store church-list1 church-list2)))))) (church-flatten (lambda (address store church-lst) (if (church-force (cons 'a255 . (address)) store ((church-force (cons 'a256 . (address)) store church-null?) (cons 'a257 . (address)) store church-lst)) '() (if (church-force (cons 'a258 . (address)) store ((church-force (cons 'a259 . (address)) store church-list?) (cons 'a260 . (address)) store ((church-force (cons 'a261 . (address)) store church-first) (cons 'a262 . (address)) store church-lst))) ((church-force (cons 'a263 . (address)) store church-append) (cons 'a264 . (address)) store ((church-force (cons 'a265 . (address)) store church-flatten) (cons 'a266 . (address)) store ((church-force (cons 'a267 . (address)) store church-first) (cons 'a268 . (address)) store church-lst)) ((church-force (cons 'a269 . (address)) store church-flatten) (cons 'a270 . (address)) store ((church-force (cons 'a271 . (address)) store church-rest) (cons 'a272 . (address)) store church-lst))) ((church-force (cons 'a273 . (address)) store church-pair) (cons 'a274 . (address)) store ((church-force (cons 'a275 . (address)) store church-first) (cons 'a276 . (address)) store church-lst) ((church-force (cons 'a277 . (address)) store church-flatten) (cons 'a278 . (address)) store ((church-force (cons 'a279 . (address)) store church-rest) (cons 'a280 . (address)) store church-lst))))))) (church-mean (lambda (address store church-lst) ((church-force (cons 'a281 . (address)) store church-/) (cons 'a282 . (address)) store ((church-force (cons 'a283 . (address)) store church-apply) (cons 'a284 . (address)) store church-+ church-lst) ((church-force (cons 'a285 . (address)) store church-length) (cons 'a286 . (address)) store church-lst)))) (church-variance (lambda (address store church-lst) ((church-force (cons 'a287 . (address)) store (lambda (address store church-mn) ((church-force (cons 'a288 . (address)) store church-mean) (cons 'a289 . (address)) store ((church-force (cons 'a290 . (address)) store church-map) (cons 'a291 . (address)) store (lambda (address store church-x) ((church-force (cons 'a292 . (address)) store church-expt) (cons 'a293 . (address)) store ((church-force (cons 'a294 . (address)) store church--) (cons 'a295 . (address)) store church-x church-mn) 2)) church-lst)))) (cons 'a296 . (address)) store ((church-force (cons 'a297 . (address)) store church-mean) (cons 'a298 . (address)) store church-lst)))) (church-no-proposals (lambda (address store church-x) (begin (church-force (cons 'a299 . (address)) store ((church-force (cons 'a300 . (address)) store church-display) (cons 'a301 . (address)) store "warning: no-proposals not implemented.\n")) church-x))) (church-range (lambda (address store church-a church-b) (if (church-force (cons 'a302 . (address)) store ((church-force (cons 'a303 . (address)) store church-=) (cons 'a304 . (address)) store church-a church-b)) ((church-force (cons 'a305 . (address)) store church-list) (cons 'a306 . (address)) store church-b) ((church-force (cons 'a307 . (address)) store church-pair) (cons 'a308 . (address)) store church-a ((church-force (cons 'a309 . (address)) store church-range) (cons 'a310 . (address)) store ((church-force (cons 'a311 . (address)) store church-+) (cons 'a312 . (address)) store church-a 1) church-b))))) (church-make-stateless-xrp (lambda (address store church-xrp-name church-sampler church-scorer . church-optional-args) ((church-force (cons 'a313 . (address)) store (lambda (address store church-proposer church-support) ((church-force (cons 'a314 . (address)) store church-make-xrp) (cons 'a315 . (address)) store church-xrp-name (lambda (address store church-stats church-hyperparams church-args) ((church-force (cons 'a316 . (address)) store (lambda (address store church-value) ((church-force (cons 'a317 . (address)) store church-list) (cons 'a318 . (address)) store church-value church-stats ((church-force (cons 'a319 . (address)) store church-scorer) (cons 'a320 . (address)) store church-args church-value)))) (cons 'a321 . (address)) store ((church-force (cons 'a322 . (address)) store church-apply) (cons 'a323 . (address)) store church-sampler church-args))) (lambda (address store church-value church-stats church-hyperparams church-args) ((church-force (cons 'a324 . (address)) store church-list) (cons 'a325 . (address)) store church-value church-stats ((church-force (cons 'a326 . (address)) store church-scorer) (cons 'a327 . (address)) store church-args church-value))) (lambda (address store church-value church-stats church-hyperparams church-args) ((church-force (cons 'a328 . (address)) store church-list) (cons 'a329 . (address)) store church-value church-stats ((church-force (cons 'a330 . (address)) store church-scorer) (cons 'a331 . (address)) store church-args church-value))) 'scorer '() '() church-proposer church-support))) (cons 'a332 . (address)) store ((church-force (cons 'a333 . (address)) store church-get-proposer) (cons 'a334 . (address)) store church-optional-args) ((church-force (cons 'a335 . (address)) store church-get-support) (cons 'a336 . (address)) store church-optional-args)))) (church-get-proposer (lambda (address store church-args) (if (church-force (cons 'a337 . (address)) store ((church-force (cons 'a338 . (address)) store church-null?) (cons 'a339 . (address)) store church-args)) '() ((church-force (cons 'a340 . (address)) store church-first) (cons 'a341 . (address)) store church-args)))) (church-get-support (lambda (address store church-args) (if (church-force (cons 'a342 . (address)) store ((church-force (cons 'a343 . (address)) store church-null?) (cons 'a344 . (address)) store church-args)) '() (if (church-force (cons 'a345 . (address)) store ((church-force (cons 'a346 . (address)) store church-null?) (cons 'a347 . (address)) store ((church-force (cons 'a348 . (address)) store church-rest) (cons 'a349 . (address)) store church-args))) '() ((church-force (cons 'a350 . (address)) store (lambda (address store church-pr) (lambda (address store church-stats church-hyperparams church-args) ((church-force (cons 'a351 . (address)) store church-pr) (cons 'a352 . (address)) store church-args)))) (cons 'a353 . (address)) store ((church-force (cons 'a354 . (address)) store church-second) (cons 'a355 . (address)) store church-args)))))) (church-flip ((church-force (cons 'a356 . (address)) store church-make-stateless-xrp) (cons 'a357 . (address)) store 'flip (lambda (address store . church-w) (if (church-force (cons 'a358 . (address)) store ((church-force (cons 'a359 . (address)) store church-null?) (cons 'a360 . (address)) store church-w)) ((church-force (cons 'a361 . (address)) store church-<) (cons 'a362 . (address)) store ((church-force (cons 'a363 . (address)) store church-random-real) (cons 'a364 . (address)) store) 0.5) ((church-force (cons 'a365 . (address)) store church-<) (cons 'a366 . (address)) store ((church-force (cons 'a367 . (address)) store church-random-real) (cons 'a368 . (address)) store) ((church-force (cons 'a369 . (address)) store church-car) (cons 'a370 . (address)) store church-w)))) (lambda (address store church-args church-val) (if (church-force (cons 'a371 . (address)) store ((church-force (cons 'a372 . (address)) store church-null?) (cons 'a373 . (address)) store church-args)) ((church-force (cons 'a374 . (address)) store church--) (cons 'a375 . (address)) store ((church-force (cons 'a376 . (address)) store church-log) (cons 'a377 . (address)) store 2.0)) (if (church-force (cons 'a378 . (address)) store church-val) ((church-force (cons 'a379 . (address)) store church-log) (cons 'a380 . (address)) store ((church-force (cons 'a381 . (address)) store church-first) (cons 'a382 . (address)) store church-args)) ((church-force (cons 'a383 . (address)) store church-log) (cons 'a384 . (address)) store ((church-force (cons 'a385 . (address)) store church--) (cons 'a386 . (address)) store 1 ((church-force (cons 'a387 . (address)) store church-first) (cons 'a388 . (address)) store church-args)))))) '() (lambda (address store church-args) ((church-force (cons 'a389 . (address)) store church-list) (cons 'a390 . (address)) store church-true church-false)))) (church-log-flip ((church-force (cons 'a391 . (address)) store church-make-stateless-xrp) (cons 'a392 . (address)) store 'log-flip (lambda (address store . church-w) (if (church-force (cons 'a393 . (address)) store ((church-force (cons 'a394 . (address)) store church-null?) (cons 'a395 . (address)) store church-w)) ((church-force (cons 'a396 . (address)) store church-<) (cons 'a397 . (address)) store ((church-force (cons 'a398 . (address)) store church-random-real) (cons 'a399 . (address)) store) 0.5) ((church-force (cons 'a400 . (address)) store church-<) (cons 'a401 . (address)) store ((church-force (cons 'a402 . (address)) store church-log) (cons 'a403 . (address)) store ((church-force (cons 'a404 . (address)) store church-random-real) (cons 'a405 . (address)) store)) ((church-force (cons 'a406 . (address)) store church-car) (cons 'a407 . (address)) store church-w)))) (lambda (address store church-args church-val) (if (church-force (cons 'a408 . (address)) store ((church-force (cons 'a409 . (address)) store church-null?) (cons 'a410 . (address)) store church-args)) ((church-force (cons 'a411 . (address)) store church--) (cons 'a412 . (address)) store ((church-force (cons 'a413 . (address)) store church-log) (cons 'a414 . (address)) store 2.0)) (if (church-force (cons 'a415 . (address)) store church-val) ((church-force (cons 'a416 . (address)) store church-first) (cons 'a417 . (address)) store church-args) ((church-force (cons 'a418 . (address)) store church-log) (cons 'a419 . (address)) store ((church-force (cons 'a420 . (address)) store church--) (cons 'a421 . (address)) store 1.0 ((church-force (cons 'a422 . (address)) store church-exp) (cons 'a423 . (address)) store ((church-force (cons 'a424 . (address)) store church-first) (cons 'a425 . (address)) store church-args))))))))) (church-dirichlet ((church-force (cons 'a426 . (address)) store church-make-stateless-xrp) (cons 'a427 . (address)) store 'dirichlet church-sample-dirichlet (lambda (address store church-args church-val) ((church-force (cons 'a428 . (address)) store church-dirichlet-lnpdf) (cons 'a429 . (address)) store ((church-force (cons 'a430 . (address)) store church-first) (cons 'a431 . (address)) store church-args) church-val)))) (church-sample-discrete ((church-force (cons 'a432 . (address)) store church-make-stateless-xrp) (cons 'a433 . (address)) store 'sample-discrete church-discrete-sampler (lambda (address store church-args church-val) (if (church-force (cons 'a434 . (address)) store ((church-force (cons 'a435 . (address)) store church->=) (cons 'a436 . (address)) store church-val ((church-force (cons 'a437 . (address)) store church-length) (cons 'a438 . (address)) store ((church-force (cons 'a439 . (address)) store church-first) (cons 'a440 . (address)) store church-args)))) -inf.0 ((church-force (cons 'a441 . (address)) store (lambda (address store church-p) (if (church-force (cons 'a442 . (address)) store ((church-force (cons 'a443 . (address)) store church->) (cons 'a444 . (address)) store church-p 0)) ((church-force (cons 'a445 . (address)) store church-log) (cons 'a446 . (address)) store church-p) -inf.0))) (cons 'a447 . (address)) store ((church-force (cons 'a448 . (address)) store church-discrete-pdf) (cons 'a449 . (address)) store ((church-force (cons 'a450 . (address)) store church-first) (cons 'a451 . (address)) store church-args) church-val)))) '() (lambda (address store church-args) ((church-force (cons 'a452 . (address)) store church-iota) (cons 'a453 . (address)) store ((church-force (cons 'a454 . (address)) store church-length) (cons 'a455 . (address)) store ((church-force (cons 'a456 . (address)) store church-first) (cons 'a457 . (address)) store church-args)))))) (church-sample-integer ((church-force (cons 'a458 . (address)) store church-make-stateless-xrp) (cons 'a459 . (address)) store 'sample-integer church-random-integer (lambda (address store church-args church-val) ((church-force (cons 'a460 . (address)) store (lambda (address store church-n) (if (church-force (cons 'a461 . (address)) store ((church-force (cons 'a462 . (address)) store church-and) (cons 'a463 . (address)) store ((church-force (cons 'a464 . (address)) store church-integer?) (cons 'a465 . (address)) store church-val) ((church-force (cons 'a466 . (address)) store church->=) (cons 'a467 . (address)) store church-val 0) ((church-force (cons 'a468 . (address)) store church-<) (cons 'a469 . (address)) store church-val church-n))) ((church-force (cons 'a470 . (address)) store church--) (cons 'a471 . (address)) store ((church-force (cons 'a472 . (address)) store church-log) (cons 'a473 . (address)) store church-n)) -inf.0))) (cons 'a474 . (address)) store ((church-force (cons 'a475 . (address)) store church-first) (cons 'a476 . (address)) store church-args))) '() (lambda (address store church-args) ((church-force (cons 'a477 . (address)) store church-iota) (cons 'a478 . (address)) store ((church-force (cons 'a479 . (address)) store church-first) (cons 'a480 . (address)) store church-args))))) (church-uniform ((church-force (cons 'a481 . (address)) store church-make-stateless-xrp) (cons 'a482 . (address)) store 'uniform (lambda (address store church-a church-b) ((church-force (cons 'a483 . (address)) store church-+) (cons 'a484 . (address)) store ((church-force (cons 'a485 . (address)) store church-*) (cons 'a486 . (address)) store ((church-force (cons 'a487 . (address)) store church--) (cons 'a488 . (address)) store church-b church-a) ((church-force (cons 'a489 . (address)) store church-random-real) (cons 'a490 . (address)) store)) church-a)) (lambda (address store church-args church-val) ((church-force (cons 'a491 . (address)) store (lambda (address store church-a church-b) (if (church-force (cons 'a492 . (address)) store ((church-force (cons 'a493 . (address)) store church-or) (cons 'a494 . (address)) store ((church-force (cons 'a495 . (address)) store church-<) (cons 'a496 . (address)) store church-val church-a) ((church-force (cons 'a497 . (address)) store church->) (cons 'a498 . (address)) store church-val church-b))) -inf.0 ((church-force (cons 'a499 . (address)) store church--) (cons 'a500 . (address)) store ((church-force (cons 'a501 . (address)) store church-log) (cons 'a502 . (address)) store ((church-force (cons 'a503 . (address)) store church--) (cons 'a504 . (address)) store church-b church-a)))))) (cons 'a505 . (address)) store ((church-force (cons 'a506 . (address)) store church-first) (cons 'a507 . (address)) store church-args) ((church-force (cons 'a508 . (address)) store church-second) (cons 'a509 . (address)) store church-args))))) (church-exponential ((church-force (cons 'a510 . (address)) store church-make-stateless-xrp) (cons 'a511 . (address)) store 'exponential (lambda (address store church-inv-mean) ((church-force (cons 'a512 . (address)) store church--) (cons 'a513 . (address)) store ((church-force (cons 'a514 . (address)) store church-/) (cons 'a515 . (address)) store ((church-force (cons 'a516 . (address)) store church-log) (cons 'a517 . (address)) store ((church-force (cons 'a518 . (address)) store church-random-real) (cons 'a519 . (address)) store)) church-inv-mean))) (lambda (address store church-args church-val) (if (church-force (cons 'a520 . (address)) store ((church-force (cons 'a521 . (address)) store church-<) (cons 'a522 . (address)) store church-val 0)) -inf.0 ((church-force (cons 'a523 . (address)) store (lambda (address store church-inv-mean) ((church-force (cons 'a524 . (address)) store church-+) (cons 'a525 . (address)) store ((church-force (cons 'a526 . (address)) store church-log) (cons 'a527 . (address)) store church-inv-mean) ((church-force (cons 'a528 . (address)) store church--) (cons 'a529 . (address)) store ((church-force (cons 'a530 . (address)) store church-*) (cons 'a531 . (address)) store church-inv-mean church-val))))) (cons 'a532 . (address)) store ((church-force (cons 'a533 . (address)) store church-first) (cons 'a534 . (address)) store church-args)))))) (church-gaussian ((church-force (cons 'a535 . (address)) store church-make-stateless-xrp) (cons 'a536 . (address)) store 'gaussian (lambda (address store . church-args) ((church-force (cons 'a537 . (address)) store church-sample-gaussian) (cons 'a538 . (address)) store ((church-force (cons 'a539 . (address)) store church-first) (cons 'a540 . (address)) store church-args) ((church-force (cons 'a541 . (address)) store church-second) (cons 'a542 . (address)) store church-args))) (lambda (address store church-args church-val) ((church-force (cons 'a543 . (address)) store church-gaussian-lnpdf) (cons 'a544 . (address)) store church-val ((church-force (cons 'a545 . (address)) store church-first) (cons 'a546 . (address)) store church-args) ((church-force (cons 'a547 . (address)) store church-second) (cons 'a548 . (address)) store church-args))))) (church-gensym ((church-force (cons 'a549 . (address)) store church-make-stateless-xrp) (cons 'a550 . (address)) store 'gensym (lambda (address store . church-prefix) ((church-force (cons 'a551 . (address)) store church-apply) (cons 'a552 . (address)) store church-scheme-gensym church-prefix)) (lambda (address store church-args church-val) ((church-force (cons 'a553 . (address)) store church-log) (cons 'a554 . (address)) store 0.9)))) (church-random-permutation ((church-force (cons 'a555 . (address)) store church-make-stateless-xrp) (cons 'a556 . (address)) store 'random-permutation (lambda (address store church-len) (letrec ((church-loop (lambda (address store church-perm church-n) (if (church-force (cons 'a557 . (address)) store ((church-force (cons 'a558 . (address)) store church-=) (cons 'a559 . (address)) store church-n 0)) church-perm ((church-force (cons 'a560 . (address)) store (lambda (address store church-k) ((church-force (cons 'a561 . (address)) store church-loop) (cons 'a562 . (address)) store ((church-force (cons 'a563 . (address)) store church-put) (cons 'a564 . (address)) store ((church-force (cons 'a565 . (address)) store church-put) (cons 'a566 . (address)) store church-perm church-k ((church-force (cons 'a567 . (address)) store church-list-ref) (cons 'a568 . (address)) store church-perm church-n)) church-n ((church-force (cons 'a569 . (address)) store church-list-ref) (cons 'a570 . (address)) store church-perm church-k)) ((church-force (cons 'a571 . (address)) store church--) (cons 'a572 . (address)) store church-n 1)))) (cons 'a573 . (address)) store ((church-force (cons 'a574 . (address)) store church-sample-integer) (cons 'a575 . (address)) store ((church-force (cons 'a576 . (address)) store church-+) (cons 'a577 . (address)) store church-n 1))))))) ((church-force (cons 'a578 . (address)) store church-loop) (cons 'a579 . (address)) store ((church-force (cons 'a580 . (address)) store church-iota) (cons 'a581 . (address)) store church-len) ((church-force (cons 'a582 . (address)) store church--) (cons 'a583 . (address)) store church-len 1)))) (lambda (address store church-args church-val) ((church-force (cons 'a584 . (address)) store (lambda (address store church-len) (if (church-force (cons 'a585 . (address)) store ((church-force (cons 'a586 . (address)) store church-=) (cons 'a587 . (address)) store church-len ((church-force (cons 'a588 . (address)) store church-length) (cons 'a589 . (address)) store church-val))) ((church-force (cons 'a590 . (address)) store church--) (cons 'a591 . (address)) store ((church-force (cons 'a592 . (address)) store church-lnfact) (cons 'a593 . (address)) store church-len)) ((church-force (cons 'a594 . (address)) store church-log) (cons 'a595 . (address)) store 0)))) (cons 'a596 . (address)) store ((church-force (cons 'a597 . (address)) store church-first) (cons 'a598 . (address)) store church-args))))) (church-put (lambda (address store church-lst church-ind church-elt) ((church-force (cons 'a599 . (address)) store church-append) (cons 'a600 . (address)) store ((church-force (cons 'a601 . (address)) store church-take) (cons 'a602 . (address)) store church-lst church-ind) ((church-force (cons 'a603 . (address)) store church-list) (cons 'a604 . (address)) store church-elt) ((church-force (cons 'a605 . (address)) store church-drop) (cons 'a606 . (address)) store church-lst ((church-force (cons 'a607 . (address)) store church-+) (cons 'a608 . (address)) store 1 church-ind))))) (church-permute (lambda (address store church-lst) ((church-force (cons 'a609 . (address)) store church-map) (cons 'a610 . (address)) store (lambda (address store church-ind) ((church-force (cons 'a611 . (address)) store church-list-ref) (cons 'a612 . (address)) store church-lst church-ind)) ((church-force (cons 'a613 . (address)) store church-random-permutation) (cons 'a614 . (address)) store ((church-force (cons 'a615 . (address)) store church-length) (cons 'a616 . (address)) store church-lst))))) (church-make-dirichlet-discrete (lambda (address store church-hyp) ((church-force (cons 'a617 . (address)) store church-make-xrp) (cons 'a618 . (address)) store 'dirichlet-discrete (lambda (address store church-stats church-hyperparams church-args) ((church-force (cons 'a619 . (address)) store (lambda (address store church-counts) ((church-force (cons 'a620 . (address)) store (lambda (address store church-total-counts) ((church-force (cons 'a621 . (address)) store (lambda (address store church-probs) ((church-force (cons 'a622 . (address)) store (lambda (address store church-value) ((church-force (cons 'a623 . (address)) store (lambda (address store church-new-stats) ((church-force (cons 'a624 . (address)) store church-list) (cons 'a625 . (address)) store church-value church-new-stats ((church-force (cons 'a626 . (address)) store church-log) (cons 'a627 . (address)) store ((church-force (cons 'a628 . (address)) store church-list-ref) (cons 'a629 . (address)) store church-probs church-value))))) (cons 'a630 . (address)) store ((church-force (cons 'a631 . (address)) store church-append) (cons 'a632 . (address)) store ((church-force (cons 'a633 . (address)) store church-take) (cons 'a634 . (address)) store church-stats church-value) ((church-force (cons 'a635 . (address)) store church-list) (cons 'a636 . (address)) store ((church-force (cons 'a637 . (address)) store church-+) (cons 'a638 . (address)) store 1 ((church-force (cons 'a639 . (address)) store church-list-ref) (cons 'a640 . (address)) store church-stats church-value))) ((church-force (cons 'a641 . (address)) store church-drop) (cons 'a642 . (address)) store church-stats ((church-force (cons 'a643 . (address)) store church-+) (cons 'a644 . (address)) store 1 church-value)))))) (cons 'a645 . (address)) store ((church-force (cons 'a646 . (address)) store church-sample-discrete) (cons 'a647 . (address)) store church-probs)))) (cons 'a648 . (address)) store ((church-force (cons 'a649 . (address)) store church-map) (cons 'a650 . (address)) store (lambda (address store church-c) ((church-force (cons 'a651 . (address)) store church-/) (cons 'a652 . (address)) store church-c church-total-counts)) church-counts)))) (cons 'a653 . (address)) store ((church-force (cons 'a654 . (address)) store church-apply) (cons 'a655 . (address)) store church-+ church-counts)))) (cons 'a656 . (address)) store ((church-force (cons 'a657 . (address)) store church-map) (cons 'a658 . (address)) store church-+ church-stats church-hyperparams))) (lambda (address store church-value church-stats church-hyperparams church-args) ((church-force (cons 'a659 . (address)) store church-list) (cons 'a660 . (address)) store church-value ((church-force (cons 'a661 . (address)) store church-append) (cons 'a662 . (address)) store ((church-force (cons 'a663 . (address)) store church-take) (cons 'a664 . (address)) store church-stats church-value) ((church-force (cons 'a665 . (address)) store church-list) (cons 'a666 . (address)) store ((church-force (cons 'a667 . (address)) store church-+) (cons 'a668 . (address)) store ((church-force (cons 'a669 . (address)) store church-list-ref) (cons 'a670 . (address)) store church-stats church-value) 1)) ((church-force (cons 'a671 . (address)) store church-drop) (cons 'a672 . (address)) store church-stats ((church-force (cons 'a673 . (address)) store church-+) (cons 'a674 . (address)) store 1 church-value))) ((church-force (cons 'a675 . (address)) store church--) (cons 'a676 . (address)) store ((church-force (cons 'a677 . (address)) store church-log) (cons 'a678 . (address)) store ((church-force (cons 'a679 . (address)) store church-+) (cons 'a680 . (address)) store ((church-force (cons 'a681 . (address)) store church-list-ref) (cons 'a682 . (address)) store church-stats church-value) ((church-force (cons 'a683 . (address)) store church-list-ref) (cons 'a684 . (address)) store church-hyperparams church-value))) ((church-force (cons 'a685 . (address)) store church-log) (cons 'a686 . (address)) store ((church-force (cons 'a687 . (address)) store church-+) (cons 'a688 . (address)) store ((church-force (cons 'a689 . (address)) store church-apply) (cons 'a690 . (address)) store church-+ church-stats) ((church-force (cons 'a691 . (address)) store church-apply) (cons 'a692 . (address)) store church-+ church-hyperparams)))))) (lambda (address store church-value church-stats church-hyperparams church-args) ((church-force (cons 'a693 . (address)) store church-list) (cons 'a694 . (address)) store church-value ((church-force (cons 'a695 . (address)) store church-append) (cons 'a696 . (address)) store ((church-force (cons 'a697 . (address)) store church-take) (cons 'a698 . (address)) store church-stats church-value) ((church-force (cons 'a699 . (address)) store church-list) (cons 'a700 . (address)) store ((church-force (cons 'a701 . (address)) store church--) (cons 'a702 . (address)) store ((church-force (cons 'a703 . (address)) store church-list-ref) (cons 'a704 . (address)) store church-stats church-value) 1)) ((church-force (cons 'a705 . (address)) store church-drop) (cons 'a706 . (address)) store church-stats ((church-force (cons 'a707 . (address)) store church-+) (cons 'a708 . (address)) store 1 church-value))) ((church-force (cons 'a709 . (address)) store church-+) (cons 'a710 . (address)) store ((church-force (cons 'a711 . (address)) store church-log) (cons 'a712 . (address)) store ((church-force (cons 'a713 . (address)) store church-+) (cons 'a714 . (address)) store -1 ((church-force (cons 'a715 . (address)) store church-list-ref) (cons 'a716 . (address)) store church-stats church-value) ((church-force (cons 'a717 . (address)) store church-list-ref) (cons 'a718 . (address)) store church-hyperparams church-value))) ((church-force (cons 'a719 . (address)) store church--) (cons 'a720 . (address)) store ((church-force (cons 'a721 . (address)) store church-log) (cons 'a722 . (address)) store ((church-force (cons 'a723 . (address)) store church-+) (cons 'a724 . (address)) store -1 ((church-force (cons 'a725 . (address)) store church-apply) (cons 'a726 . (address)) store church-+ church-stats) ((church-force (cons 'a727 . (address)) store church-apply) (cons 'a728 . (address)) store church-+ church-hyperparams))))))) 'dirichlet-discrete-scorer ((church-force (cons 'a729 . (address)) store church-make-list) (cons 'a730 . (address)) store ((church-force (cons 'a731 . (address)) store church-length) (cons 'a732 . (address)) store church-hyp) 0.0) church-hyp '() (lambda (address store church-stats church-hyperparams church-args) ((church-force (cons 'a733 . (address)) store church-iota) (cons 'a734 . (address)) store ((church-force (cons 'a735 . (address)) store church-length) (cons 'a736 . (address)) store church-hyperparams)))))) (church-make-beta-binomial (lambda (address store church-alpha church-beta) ((church-force (cons 'a737 . (address)) store (lambda (address store church-dd) (lambda (address store) ((church-force (cons 'a738 . (address)) store church-=) (cons 'a739 . (address)) store ((church-force (cons 'a740 . (address)) store church-dd) (cons 'a741 . (address)) store) 1)))) (cons 'a742 . (address)) store ((church-force (cons 'a743 . (address)) store church-make-dirichlet-discrete) (cons 'a744 . (address)) store ((church-force (cons 'a745 . (address)) store church-list) (cons 'a746 . (address)) store church-alpha church-beta))))) (church-make-symmetric-dirichlet-discrete (lambda (address store church-N church-hyp) ((church-force (cons 'a747 . (address)) store church-make-dirichlet-discrete) (cons 'a748 . (address)) store ((church-force (cons 'a749 . (address)) store church-make-list) (cons 'a750 . (address)) store church-N church-hyp)))) (church-make-CRP (lambda (address store church-alpha) ((church-force (cons 'a751 . (address)) store church-make-xrp) (cons 'a752 . (address)) store 'CRP (lambda (address store church-stats church-hyperparam church-args) ((church-force (cons 'a753 . (address)) store (lambda (address store church-count-map) ((church-force (cons 'a754 . (address)) store (lambda (address store church-counts) ((church-force (cons 'a755 . (address)) store (lambda (address store church-total-counts) ((church-force (cons 'a756 . (address)) store (lambda (address store church-probs) ((church-force (cons 'a757 . (address)) store (lambda (address store church-table-index) (if (church-force (cons 'a758 . (address)) store ((church-force (cons 'a759 . (address)) store church-=) (cons 'a760 . (address)) store church-table-index 0)) ((church-force (cons 'a761 . (address)) store (lambda (address store church-table-symbol) ((church-force (cons 'a762 . (address)) store (lambda (address store church-new-count-map) ((church-force (cons 'a763 . (address)) store church-list) (cons 'a764 . (address)) store church-table-symbol church-new-count-map ((church-force (cons 'a765 . (address)) store church-list-ref) (cons 'a766 . (address)) store church-probs church-table-index)))) (cons 'a767 . (address)) store ((church-force (cons 'a768 . (address)) store church-pair) (cons 'a769 . (address)) store ((church-force (cons 'a770 . (address)) store church-pair) (cons 'a771 . (address)) store church-table-symbol 1) church-count-map)))) (cons 'a772 . (address)) store ((church-force (cons 'a773 . (address)) store church-gensym) (cons 'a774 . (address)) store)) ((church-force (cons 'a775 . (address)) store (lambda (address store church-table-symbol) ((church-force (cons 'a776 . (address)) store (lambda (address store church-table-count) ((church-force (cons 'a777 . (address)) store (lambda (address store church-new-count-map) ((church-force (cons 'a778 . (address)) store church-list) (cons 'a779 . (address)) store church-table-symbol church-new-count-map ((church-force (cons 'a780 . (address)) store church-list-ref) (cons 'a781 . (address)) store church-probs church-table-index)))) (cons 'a782 . (address)) store ((church-force (cons 'a783 . (address)) store church-append) (cons 'a784 . (address)) store ((church-force (cons 'a785 . (address)) store church-take) (cons 'a786 . (address)) store church-count-map ((church-force (cons 'a787 . (address)) store church--) (cons 'a788 . (address)) store church-table-index 1)) ((church-force (cons 'a789 . (address)) store church-list) (cons 'a790 . (address)) store ((church-force (cons 'a791 . (address)) store church-pair) (cons 'a792 . (address)) store church-table-symbol church-table-count)) ((church-force (cons 'a793 . (address)) store church-drop) (cons 'a794 . (address)) store church-count-map church-table-index))))) (cons 'a795 . (address)) store ((church-force (cons 'a796 . (address)) store church-+) (cons 'a797 . (address)) store 1 ((church-force (cons 'a798 . (address)) store church-rest) (cons 'a799 . (address)) store ((church-force (cons 'a800 . (address)) store church-list-ref) (cons 'a801 . (address)) store church-count-map ((church-force (cons 'a802 . (address)) store church--) (cons 'a803 . (address)) store church-table-index 1))))))) (cons 'a804 . (address)) store ((church-force (cons 'a805 . (address)) store church-first) (cons 'a806 . (address)) store ((church-force (cons 'a807 . (address)) store church-list-ref) (cons 'a808 . (address)) store church-count-map ((church-force (cons 'a809 . (address)) store church--) (cons 'a810 . (address)) store church-table-index 1))))))) (cons 'a811 . (address)) store ((church-force (cons 'a812 . (address)) store church-sample-discrete) (cons 'a813 . (address)) store church-probs)))) (cons 'a814 . (address)) store ((church-force (cons 'a815 . (address)) store church-map) (cons 'a816 . (address)) store (lambda (address store church-c) ((church-force (cons 'a817 . (address)) store church-/) (cons 'a818 . (address)) store church-c church-total-counts)) church-counts)))) (cons 'a819 . (address)) store ((church-force (cons 'a820 . (address)) store church-apply) (cons 'a821 . (address)) store church-+ church-counts)))) (cons 'a822 . (address)) store ((church-force (cons 'a823 . (address)) store church-pair) (cons 'a824 . (address)) store church-hyperparam ((church-force (cons 'a825 . (address)) store church-map) (cons 'a826 . (address)) store church-rest church-count-map))))) (cons 'a827 . (address)) store church-stats)) (lambda (address store church-value church-stats church-hyperparam church-args) ((church-force (cons 'a828 . (address)) store (lambda (address store church-count-map) ((church-force (cons 'a829 . (address)) store (lambda (address store church-counts) ((church-force (cons 'a830 . (address)) store (lambda (address store church-total-counts) ((church-force (cons 'a831 . (address)) store (lambda (address store church-probs) ((church-force (cons 'a832 . (address)) store (lambda (address store church-table-index) (if (church-force (cons 'a833 . (address)) store ((church-force (cons 'a834 . (address)) store church-eq?) (cons 'a835 . (address)) store church-false church-table-index)) ((church-force (cons 'a836 . (address)) store church-list) (cons 'a837 . (address)) store church-value ((church-force (cons 'a838 . (address)) store church-pair) (cons 'a839 . (address)) store ((church-force (cons 'a840 . (address)) store church-pair) (cons 'a841 . (address)) store church-value 1) church-count-map) ((church-force (cons 'a842 . (address)) store church-list-ref) (cons 'a843 . (address)) store church-probs 0)) ((church-force (cons 'a844 . (address)) store (lambda (address store church-table-count) ((church-force (cons 'a845 . (address)) store (lambda (address store church-new-table-count) ((church-force (cons 'a846 . (address)) store (lambda (address store church-new-count-map) ((church-force (cons 'a847 . (address)) store church-list) (cons 'a848 . (address)) store church-value church-new-count-map ((church-force (cons 'a849 . (address)) store church-list-ref) (cons 'a850 . (address)) store church-probs church-table-index)))) (cons 'a851 . (address)) store ((church-force (cons 'a852 . (address)) store church-append) (cons 'a853 . (address)) store ((church-force (cons 'a854 . (address)) store church-take) (cons 'a855 . (address)) store church-count-map church-table-index) ((church-force (cons 'a856 . (address)) store church-list) (cons 'a857 . (address)) store ((church-force (cons 'a858 . (address)) store church-pair) (cons 'a859 . (address)) store church-value church-new-table-count)) ((church-force (cons 'a860 . (address)) store church-drop) (cons 'a861 . (address)) store church-count-map ((church-force (cons 'a862 . (address)) store church-+) (cons 'a863 . (address)) store 1 church-table-index)))))) (cons 'a864 . (address)) store ((church-force (cons 'a865 . (address)) store church-+) (cons 'a866 . (address)) store church-table-count 1)))) (cons 'a867 . (address)) store ((church-force (cons 'a868 . (address)) store church-rest) (cons 'a869 . (address)) store ((church-force (cons 'a870 . (address)) store church-list-ref) (cons 'a871 . (address)) store church-count-map church-table-index)))))) (cons 'a872 . (address)) store ((church-force (cons 'a873 . (address)) store church-list-index) (cons 'a874 . (address)) store (lambda (address store church-c) ((church-force (cons 'a875 . (address)) store church-eq?) (cons 'a876 . (address)) store church-value ((church-force (cons 'a877 . (address)) store church-first) (cons 'a878 . (address)) store church-c))) church-count-map)))) (cons 'a879 . (address)) store ((church-force (cons 'a880 . (address)) store church-map) (cons 'a881 . (address)) store (lambda (address store church-c) ((church-force (cons 'a882 . (address)) store church-/) (cons 'a883 . (address)) store church-c church-total-counts)) church-counts)))) (cons 'a884 . (address)) store ((church-force (cons 'a885 . (address)) store church-apply) (cons 'a886 . (address)) store church-+ church-counts)))) (cons 'a887 . (address)) store ((church-force (cons 'a888 . (address)) store church-pair) (cons 'a889 . (address)) store church-hyperparam ((church-force (cons 'a890 . (address)) store church-map) (cons 'a891 . (address)) store church-rest church-count-map))))) (cons 'a892 . (address)) store church-stats)) (lambda (address store church-value church-stats church-hyperparam church-args) ((church-force (cons 'a893 . (address)) store (lambda (address store church-count-map) ((church-force (cons 'a894 . (address)) store (lambda (address store church-counts) ((church-force (cons 'a895 . (address)) store (lambda (address store church-table-index) (if (church-force (cons 'a896 . (address)) store ((church-force (cons 'a897 . (address)) store church-eq?) (cons 'a898 . (address)) store church-false church-table-index)) ((church-force (cons 'a899 . (address)) store church-error) (cons 'a900 . (address)) store church-table-index "can't decr a value from CRP that doesn't label any table!") ((church-force (cons 'a901 . (address)) store (lambda (address store church-table-count) ((church-force (cons 'a902 . (address)) store (lambda (address store church-new-table-count) ((church-force (cons 'a903 . (address)) store (lambda (address store church-new-count-map) ((church-force (cons 'a904 . (address)) store church-list) (cons 'a905 . (address)) store church-value church-new-count-map (if (church-force (cons 'a906 . (address)) store ((church-force (cons 'a907 . (address)) store church-=) (cons 'a908 . (address)) store 0 church-new-table-count)) ((church-force (cons 'a909 . (address)) store church-/) (cons 'a910 . (address)) store church-hyperparam ((church-force (cons 'a911 . (address)) store church-+) (cons 'a912 . (address)) store church-hyperparam ((church-force (cons 'a913 . (address)) store church-apply) (cons 'a914 . (address)) store church-+ church-counts) ((church-force (cons 'a915 . (address)) store church--) (cons 'a916 . (address)) store 1))) ((church-force (cons 'a917 . (address)) store church-/) (cons 'a918 . (address)) store church-new-table-count ((church-force (cons 'a919 . (address)) store church-+) (cons 'a920 . (address)) store church-hyperparam ((church-force (cons 'a921 . (address)) store church-apply) (cons 'a922 . (address)) store church-+ church-counts) ((church-force (cons 'a923 . (address)) store church--) (cons 'a924 . (address)) store 1))))))) (cons 'a925 . (address)) store (if (church-force (cons 'a926 . (address)) store ((church-force (cons 'a927 . (address)) store church-=) (cons 'a928 . (address)) store 0 church-new-table-count)) ((church-force (cons 'a929 . (address)) store church-append) (cons 'a930 . (address)) store ((church-force (cons 'a931 . (address)) store church-take) (cons 'a932 . (address)) store church-count-map church-table-index) ((church-force (cons 'a933 . (address)) store church-drop) (cons 'a934 . (address)) store church-count-map ((church-force (cons 'a935 . (address)) store church-+) (cons 'a936 . (address)) store 1 church-table-index))) ((church-force (cons 'a937 . (address)) store church-append) (cons 'a938 . (address)) store ((church-force (cons 'a939 . (address)) store church-take) (cons 'a940 . (address)) store church-count-map church-table-index) ((church-force (cons 'a941 . (address)) store church-list) (cons 'a942 . (address)) store ((church-force (cons 'a943 . (address)) store church-pair) (cons 'a944 . (address)) store church-value church-new-table-count)) ((church-force (cons 'a945 . (address)) store church-drop) (cons 'a946 . (address)) store church-count-map ((church-force (cons 'a947 . (address)) store church-+) (cons 'a948 . (address)) store 1 church-table-index))))))) (cons 'a949 . (address)) store ((church-force (cons 'a950 . (address)) store church--) (cons 'a951 . (address)) store church-table-count 1)))) (cons 'a952 . (address)) store ((church-force (cons 'a953 . (address)) store church-rest) (cons 'a954 . (address)) store ((church-force (cons 'a955 . (address)) store church-list-ref) (cons 'a956 . (address)) store church-count-map church-table-index)))))) (cons 'a957 . (address)) store ((church-force (cons 'a958 . (address)) store church-list-index) (cons 'a959 . (address)) store (lambda (address store church-c) ((church-force (cons 'a960 . (address)) store church-eq?) (cons 'a961 . (address)) store church-value ((church-force (cons 'a962 . (address)) store church-first) (cons 'a963 . (address)) store church-c))) church-count-map)))) (cons 'a964 . (address)) store ((church-force (cons 'a965 . (address)) store church-map) (cons 'a966 . (address)) store church-rest church-count-map)))) (cons 'a967 . (address)) store church-stats)) 'CRP-scorer '() church-alpha '() '()))) (church-DPmem (lambda (address store church-alpha church-proc) ((church-force (cons 'a968 . (address)) store (lambda (address store church-augmented-proc church-crps) (lambda (address store . church-argsin) ((church-force (cons 'a969 . (address)) store church-augmented-proc) (cons 'a970 . (address)) store church-argsin ((church-force (cons 'a971 . (address)) store ((church-force (cons 'a972 . (address)) store church-crps) (cons 'a973 . (address)) store church-argsin)) (cons 'a974 . (address)) store))))) (cons 'a975 . (address)) store ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args church-part) ((church-force (cons 'a976 . (address)) store church-apply) (cons 'a977 . (address)) store church-proc church-args))) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-args) ((church-force (cons 'a978 . (address)) store church-make-CRP) (cons 'a979 . (address)) store church-alpha)))))) (church-basic-proposal-distribution (lambda (address store church-state church-normal-form-proc) ((church-force (cons 'a980 . (address)) store (lambda (address store church-xrp-draws) ((church-force (cons 'a981 . (address)) store (lambda (address store church-with-proposer-calls) (if (church-force (cons 'a982 . (address)) store ((church-force (cons 'a983 . (address)) store church-and) (cons 'a984 . (address)) store ((church-force (cons 'a985 . (address)) store church-none?) (cons 'a986 . (address)) store church-xrp-draws) ((church-force (cons 'a987 . (address)) store church-none?) (cons 'a988 . (address)) store church-with-proposer-calls))) ((church-force (cons 'a989 . (address)) store church-trivial-proposal) (cons 'a990 . (address)) store church-state) (if (church-force (cons 'a991 . (address)) store ((church-force (cons 'a992 . (address)) store church-none?) (cons 'a993 . (address)) store church-xrp-draws)) ((church-force (cons 'a994 . (address)) store church-run-with-proposer) (cons 'a995 . (address)) store church-with-proposer-calls church-state church-normal-form-proc) (if (church-force (cons 'a996 . (address)) store ((church-force (cons 'a997 . (address)) store church-none?) (cons 'a998 . (address)) store church-with-proposer-calls)) ((church-force (cons 'a999 . (address)) store church-run-xrp-proposer) (cons 'a1000 . (address)) store church-xrp-draws church-state church-normal-form-proc) (if (church-force (cons 'a1001 . (address)) store ((church-force (cons 'a1002 . (address)) store church-flip) (cons 'a1003 . (address)) store)) ((church-force (cons 'a1004 . (address)) store church-run-with-proposer) (cons 'a1005 . (address)) store church-with-proposer-calls church-state church-normal-form-proc) ((church-force (cons 'a1006 . (address)) store church-run-xrp-proposer) (cons 'a1007 . (address)) store church-xrp-draws church-state church-normal-form-proc))))))) (cons 'a1008 . (address)) store ((church-force (cons 'a1009 . (address)) store church-mcmc-state->with-proposer-calls) (cons 'a1010 . (address)) store church-state)))) (cons 'a1011 . (address)) store ((church-force (cons 'a1012 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1013 . (address)) store church-state)))) (church-none? church-addbox-empty?) (church-addbox-draw-item (lambda (address store church-addbox) ((church-force (cons 'a1014 . (address)) store church-rest) (cons 'a1015 . (address)) store ((church-force (cons 'a1016 . (address)) store church-uniform-draw) (cons 'a1017 . (address)) store ((church-force (cons 'a1018 . (address)) store church-addbox->alist) (cons 'a1019 . (address)) store church-addbox))))) (church-run-with-proposer (lambda (address store church-with-proposer-calls church-state church-nfqp) ((church-force (cons 'a1020 . (address)) store (lambda (address store church-chosen) ((church-force (cons 'a1021 . (address)) store (lambda (address store church-old-value) ((church-force (cons 'a1022 . (address)) store (lambda (address store church-new-value+scores) ((church-force (cons 'a1023 . (address)) store (lambda (address store church-new-value) ((church-force (cons 'a1024 . (address)) store (lambda (address store church-fw-prob) ((church-force (cons 'a1025 . (address)) store (lambda (address store church-bw-prob) ((church-force (cons 'a1026 . (address)) store (lambda (address store church-interventions) ((church-force (cons 'a1027 . (address)) store (lambda (address store church-none) ((church-force (cons 'a1028 . (address)) store (lambda (address store church-ret2) ((church-force (cons 'a1029 . (address)) store (lambda (address store church-proposal-state) ((church-force (cons 'a1030 . (address)) store church-list) (cons 'a1031 . (address)) store ((church-force (cons 'a1032 . (address)) store church--) (cons 'a1033 . (address)) store church-bw-prob church-fw-prob) church-proposal-state))) (cons 'a1034 . (address)) store ((church-force (cons 'a1035 . (address)) store church-first) (cons 'a1036 . (address)) store church-ret2)))) (cons 'a1037 . (address)) store ((church-force (cons 'a1038 . (address)) store church-apply) (cons 'a1039 . (address)) store church-counterfactual-update ((church-force (cons 'a1040 . (address)) store church-append) (cons 'a1041 . (address)) store ((church-force (cons 'a1042 . (address)) store church-list) (cons 'a1043 . (address)) store church-state church-nfqp) church-interventions))))) (cons 'a1044 . (address)) store ((church-force (cons 'a1045 . (address)) store church-reset-with-proposer-calls) (cons 'a1046 . (address)) store church-state)))) (cons 'a1047 . (address)) store ((church-force (cons 'a1048 . (address)) store church-find-random-choices) (cons 'a1049 . (address)) store church-new-value church-chosen church-state)))) (cons 'a1050 . (address)) store ((church-force (cons 'a1051 . (address)) store church-third) (cons 'a1052 . (address)) store church-new-value+scores)))) (cons 'a1053 . (address)) store ((church-force (cons 'a1054 . (address)) store church-second) (cons 'a1055 . (address)) store church-new-value+scores)))) (cons 'a1056 . (address)) store ((church-force (cons 'a1057 . (address)) store church-first) (cons 'a1058 . (address)) store church-new-value+scores)))) (cons 'a1059 . (address)) store ((church-force (cons 'a1060 . (address)) store ((church-force (cons 'a1061 . (address)) store church-with-proposer-call-proposer) (cons 'a1062 . (address)) store church-chosen)) (cons 'a1063 . (address)) store church-old-value)))) (cons 'a1064 . (address)) store ((church-force (cons 'a1065 . (address)) store church-lazy-list->all-list) (cons 'a1066 . (address)) store ((church-force (cons 'a1067 . (address)) store church-with-proposer-call-value) (cons 'a1068 . (address)) store church-chosen))))) (cons 'a1069 . (address)) store ((church-force (cons 'a1070 . (address)) store church-addbox-draw-item) (cons 'a1071 . (address)) store church-with-proposer-calls)))) (church-find-random-choices (lambda (address store church-new-value church-chosen church-state) ((church-force (cons 'a1072 . (address)) store (lambda (address store church-new-value) ((church-force (cons 'a1073 . (address)) store (lambda (address store church-temps-nfqp) ((church-force (cons 'a1074 . (address)) store (lambda (address store church-depths) ((church-force (cons 'a1075 . (address)) store (lambda (address store church-address) ((church-force (cons 'a1076 . (address)) store (lambda (address store church-states) ((church-force (cons 'a1077 . (address)) store (lambda (address store church-xrp-draws) ((church-force (cons 'a1078 . (address)) store (lambda (address store church-interventions) church-interventions)) (cons 'a1079 . (address)) store ((church-force (cons 'a1080 . (address)) store church-map) (cons 'a1081 . (address)) store ((church-force (cons 'a1082 . (address)) store church-make-interventions) (cons 'a1083 . (address)) store church-address ((church-force (cons 'a1084 . (address)) store church-get-xrp-ticks) (cons 'a1085 . (address)) store church-state)) church-xrp-draws)))) (cons 'a1086 . (address)) store ((church-force (cons 'a1087 . (address)) store church-map) (cons 'a1088 . (address)) store church-rest ((church-force (cons 'a1089 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1090 . (address)) store ((church-force (cons 'a1091 . (address)) store church-first) (cons 'a1092 . (address)) store church-states)))))) (cons 'a1093 . (address)) store ((church-force (cons 'a1094 . (address)) store church-smc-core) (cons 'a1095 . (address)) store church-depths 1 2 church-temps-nfqp '())))) (cons 'a1096 . (address)) store ((church-force (cons 'a1097 . (address)) store church-with-proposer-call-address) (cons 'a1098 . (address)) store church-chosen)))) (cons 'a1099 . (address)) store ((church-force (cons 'a1100 . (address)) store church-map) (cons 'a1101 . (address)) store church-list ((church-force (cons 'a1102 . (address)) store church-iota) (cons 'a1103 . (address)) store ((church-force (cons 'a1104 . (address)) store church-compute-depth) (cons 'a1105 . (address)) store church-new-value)))))) (cons 'a1106 . (address)) store ((church-force (cons 'a1107 . (address)) store church-make-temps-nfqp) (cons 'a1108 . (address)) store church-new-value ((church-force (cons 'a1109 . (address)) store church-with-proposer-call-proc) (cons 'a1110 . (address)) store church-chosen))))) (cons 'a1111 . (address)) store ((church-force (cons 'a1112 . (address)) store church-list->lazy-list) (cons 'a1113 . (address)) store church-new-value)))) (church-make-temps-nfqp (lambda (address store church-target-value church-proc) (lambda (address store church-temp) (lambda (address store) (letrec ((church-p ((church-force (cons 'a1114 . (address)) store church-proc) (cons 'a1115 . (address)) store))) ((church-force (cons 'a1116 . (address)) store church-pair) (cons 'a1117 . (address)) store ((church-force (cons 'a1118 . (address)) store church-lazy-equal?) (cons 'a1119 . (address)) store church-p church-target-value church-temp) (lambda (address store) ((church-force (cons 'a1120 . (address)) store church-first) (cons 'a1121 . (address)) store ((church-force (cons 'a1122 . (address)) store church-lazy-list->list) (cons 'a1123 . (address)) store church-p church-temp))))))))) (church-get-xrp-ticks (lambda (address store church-mcmc-state) ((church-force (cons 'a1124 . (address)) store (lambda (address store church-draws-addbox) ((church-force (cons 'a1125 . (address)) store (lambda (address store church-xrp-draw) ((church-force (cons 'a1126 . (address)) store church-xrp-draw-ticks) (cons 'a1127 . (address)) store church-xrp-draw))) (cons 'a1128 . (address)) store ((church-force (cons 'a1129 . (address)) store church-rest) (cons 'a1130 . (address)) store ((church-force (cons 'a1131 . (address)) store church-first) (cons 'a1132 . (address)) store church-draws-addbox))))) (cons 'a1133 . (address)) store ((church-force (cons 'a1134 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1135 . (address)) store church-mcmc-state)))) (church-make-interventions (lambda (address store church-init-address church-state-xrp-ticks) (lambda (address store church-xrp-draw) ((church-force (cons 'a1136 . (address)) store (lambda (address store church-address) ((church-force (cons 'a1137 . (address)) store (lambda (address store church-new-address) ((church-force (cons 'a1138 . (address)) store (lambda (address store church-new-xrp-draw) ((church-force (cons 'a1139 . (address)) store church-pair) (cons 'a1140 . (address)) store church-new-xrp-draw ((church-force (cons 'a1141 . (address)) store church-xrp-draw-value) (cons 'a1142 . (address)) store church-xrp-draw)))) (cons 'a1143 . (address)) store ((church-force (cons 'a1144 . (address)) store church-make-xrp-draw) (cons 'a1145 . (address)) store church-new-address ((church-force (cons 'a1146 . (address)) store church-xrp-draw-value) (cons 'a1147 . (address)) store church-xrp-draw) ((church-force (cons 'a1148 . (address)) store church-xrp-draw-name) (cons 'a1149 . (address)) store church-xrp-draw) ((church-force (cons 'a1150 . (address)) store church-xrp-draw-proposer) (cons 'a1151 . (address)) store church-xrp-draw) church-state-xrp-ticks ((church-force (cons 'a1152 . (address)) store church-xrp-draw-score) (cons 'a1153 . (address)) store church-xrp-draw) ((church-force (cons 'a1154 . (address)) store church-xrp-draw-support) (cons 'a1155 . (address)) store church-xrp-draw))))) (cons 'a1156 . (address)) store ((church-force (cons 'a1157 . (address)) store church-adjust-address) (cons 'a1158 . (address)) store church-address church-init-address)))) (cons 'a1159 . (address)) store ((church-force (cons 'a1160 . (address)) store church-xrp-draw-address) (cons 'a1161 . (address)) store church-xrp-draw))))) (church-adjust-address (lambda (address store church-address church-init-address) ((church-force (cons 'a1162 . (address)) store church-append) (cons 'a1163 . (address)) store ((church-force (cons 'a1164 . (address)) store church-drop-right) (cons 'a1165 . (address)) store church-address 1) church-init-address))) (church-run-xrp-proposer (lambda (address store church-xrp-draws church-state church-nfqp) ((church-force (cons 'a1166 . (address)) store (lambda (address store church-chosen) ((church-force (cons 'a1167 . (address)) store (lambda (address store church-ret1) ((church-force (cons 'a1168 . (address)) store (lambda (address store church-proposed-val) ((church-force (cons 'a1169 . (address)) store (lambda (address store church-proposal-fw-score) ((church-force (cons 'a1170 . (address)) store (lambda (address store church-proposal-bw-score) ((church-force (cons 'a1171 . (address)) store (lambda (address store church-ret2) ((church-force (cons 'a1172 . (address)) store (lambda (address store church-proposal-state) ((church-force (cons 'a1173 . (address)) store (lambda (address store church-cd-bw/fw) ((church-force (cons 'a1174 . (address)) store (lambda (address store church-ind-fw) ((church-force (cons 'a1175 . (address)) store (lambda (address store church-ind-bw) ((church-force (cons 'a1176 . (address)) store church-list) (cons 'a1177 . (address)) store ((church-force (cons 'a1178 . (address)) store church-+) (cons 'a1179 . (address)) store ((church-force (cons 'a1180 . (address)) store church--) (cons 'a1181 . (address)) store church-proposal-bw-score church-proposal-fw-score) church-cd-bw/fw ((church-force (cons 'a1182 . (address)) store church--) (cons 'a1183 . (address)) store church-ind-bw church-ind-fw)) church-proposal-state))) (cons 'a1184 . (address)) store ((church-force (cons 'a1185 . (address)) store church--) (cons 'a1186 . (address)) store ((church-force (cons 'a1187 . (address)) store church-log) (cons 'a1188 . (address)) store ((church-force (cons 'a1189 . (address)) store church-addbox-size) (cons 'a1190 . (address)) store ((church-force (cons 'a1191 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1192 . (address)) store church-proposal-state))))))) (cons 'a1193 . (address)) store ((church-force (cons 'a1194 . (address)) store church--) (cons 'a1195 . (address)) store ((church-force (cons 'a1196 . (address)) store church-log) (cons 'a1197 . (address)) store ((church-force (cons 'a1198 . (address)) store church-addbox-size) (cons 'a1199 . (address)) store ((church-force (cons 'a1200 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1201 . (address)) store church-state))))))) (cons 'a1202 . (address)) store ((church-force (cons 'a1203 . (address)) store church-second) (cons 'a1204 . (address)) store church-ret2)))) (cons 'a1205 . (address)) store ((church-force (cons 'a1206 . (address)) store church-first) (cons 'a1207 . (address)) store church-ret2)))) (cons 'a1208 . (address)) store ((church-force (cons 'a1209 . (address)) store church-apply) (cons 'a1210 . (address)) store church-counterfactual-update ((church-force (cons 'a1211 . (address)) store church-append) (cons 'a1212 . (address)) store ((church-force (cons 'a1213 . (address)) store church-list) (cons 'a1214 . (address)) store church-state church-nfqp) ((church-force (cons 'a1215 . (address)) store church-list) (cons 'a1216 . (address)) store ((church-force (cons 'a1217 . (address)) store church-pair) (cons 'a1218 . (address)) store church-chosen church-proposed-val))))))) (cons 'a1219 . (address)) store ((church-force (cons 'a1220 . (address)) store church-third) (cons 'a1221 . (address)) store church-ret1)))) (cons 'a1222 . (address)) store ((church-force (cons 'a1223 . (address)) store church-second) (cons 'a1224 . (address)) store church-ret1)))) (cons 'a1225 . (address)) store ((church-force (cons 'a1226 . (address)) store church-first) (cons 'a1227 . (address)) store church-ret1)))) (cons 'a1228 . (address)) store ((church-force (cons 'a1229 . (address)) store ((church-force (cons 'a1230 . (address)) store church-xrp-draw-proposer) (cons 'a1231 . (address)) store church-chosen)) (cons 'a1232 . (address)) store church-state)))) (cons 'a1233 . (address)) store ((church-force (cons 'a1234 . (address)) store church-addbox-draw-item) (cons 'a1235 . (address)) store church-xrp-draws)))) (church-trivial-proposal (lambda (address store church-state) ((church-force (cons 'a1236 . (address)) store church-list) (cons 'a1237 . (address)) store 0.0 church-state))) (church-rejection-initializer (lambda (address store church-normal-form-proc) ((church-force (cons 'a1238 . (address)) store (lambda (address store church-init-state) ((church-force (cons 'a1239 . (address)) store (lambda (address store church-proposal-state) (if (church-force (cons 'a1240 . (address)) store ((church-force (cons 'a1241 . (address)) store church-=) (cons 'a1242 . (address)) store -inf.0 ((church-force (cons 'a1243 . (address)) store church-mcmc-state->score) (cons 'a1244 . (address)) store church-proposal-state))) ((church-force (cons 'a1245 . (address)) store church-rejection-initializer) (cons 'a1246 . (address)) store church-normal-form-proc) ((church-force (cons 'a1247 . (address)) store (lambda (address store) church-proposal-state)) (cons 'a1248 . (address)) store)))) (cons 'a1249 . (address)) store ((church-force (cons 'a1250 . (address)) store church-first) (cons 'a1251 . (address)) store ((church-force (cons 'a1252 . (address)) store church-counterfactual-update) (cons 'a1253 . (address)) store church-init-state church-normal-form-proc))))) (cons 'a1254 . (address)) store ((church-force (cons 'a1255 . (address)) store church-make-initial-mcmc-state) (cons 'a1256 . (address)) store)))) (church-rejection-addressed-initializer (lambda (address store church-normal-form-proc church-start-address) ((church-force (cons 'a1257 . (address)) store (lambda (address store church-init-state) ((church-force (cons 'a1258 . (address)) store (lambda (address store church-proposal-state) (if (church-force (cons 'a1259 . (address)) store ((church-force (cons 'a1260 . (address)) store church-=) (cons 'a1261 . (address)) store -inf.0 ((church-force (cons 'a1262 . (address)) store church-mcmc-state->score) (cons 'a1263 . (address)) store church-proposal-state))) ((church-force (cons 'a1264 . (address)) store church-rejection-addressed-initializer) (cons 'a1265 . (address)) store church-normal-form-proc church-start-address) church-proposal-state))) (cons 'a1266 . (address)) store ((church-force (cons 'a1267 . (address)) store church-first) (cons 'a1268 . (address)) store ((church-force (cons 'a1269 . (address)) store church-counterfactual-update) (cons 'a1270 . (address)) store church-init-state church-normal-form-proc))))) (cons 'a1271 . (address)) store ((church-force (cons 'a1272 . (address)) store church-make-addressed-initial-mcmc-state) (cons 'a1273 . (address)) store church-start-address)))) (church-expr-initializer (lambda (address store church-normal-form-proc church-expr) ((church-force (cons 'a1274 . (address)) store (lambda (address store church-random-state) ((church-force (cons 'a1275 . (address)) store (lambda (address store church-fixed-val-state) ((church-force (cons 'a1276 . (address)) store (lambda (address store church-with-proposer-calls) ((church-force (cons 'a1277 . (address)) store (lambda (address store church-modified-proposer-calls) ((church-force (cons 'a1278 . (address)) store (lambda (address store church-init-state) church-init-state)) (cons 'a1279 . (address)) store ((church-force (cons 'a1280 . (address)) store church-second) (cons 'a1281 . (address)) store ((church-force (cons 'a1282 . (address)) store church-run-with-proposer) (cons 'a1283 . (address)) store church-modified-proposer-calls church-fixed-val-state church-normal-form-proc))))) (cons 'a1284 . (address)) store ((church-force (cons 'a1285 . (address)) store church-initializer-proposer-calls) (cons 'a1286 . (address)) store church-with-proposer-calls church-expr)))) (cons 'a1287 . (address)) store ((church-force (cons 'a1288 . (address)) store church-mcmc-state->with-proposer-calls) (cons 'a1289 . (address)) store church-fixed-val-state)))) (cons 'a1290 . (address)) store ((church-force (cons 'a1291 . (address)) store church-make-mcmc-state) (cons 'a1292 . (address)) store ((church-force (cons 'a1293 . (address)) store church-mcmc-state->store) (cons 'a1294 . (address)) store church-random-state) ((church-force (cons 'a1295 . (address)) store church-pair) (cons 'a1296 . (address)) store #t (lambda (address store) church-expr)) ((church-force (cons 'a1297 . (address)) store church-mcmc-state->address) (cons 'a1298 . (address)) store church-random-state))))) (cons 'a1299 . (address)) store ((church-force (cons 'a1300 . (address)) store church-first) (cons 'a1301 . (address)) store ((church-force (cons 'a1302 . (address)) store church-counterfactual-update) (cons 'a1303 . (address)) store ((church-force (cons 'a1304 . (address)) store church-make-initial-mcmc-state) (cons 'a1305 . (address)) store) church-normal-form-proc))))) (church-initializer-proposer-calls (lambda (address store church-with-proposer-calls church-expr) ((church-force (cons 'a1306 . (address)) store (lambda (address store church-first-entry) ((church-force (cons 'a1307 . (address)) store (lambda (address store church-address) ((church-force (cons 'a1308 . (address)) store (lambda (address store church-call) ((church-force (cons 'a1309 . (address)) store (lambda (address store church-new-call) ((church-force (cons 'a1310 . (address)) store (lambda (address store church-new-proposer-calls) church-new-proposer-calls)) (cons 'a1311 . (address)) store ((church-force (cons 'a1312 . (address)) store church-add-into-addbox) (cons 'a1313 . (address)) store ((church-force (cons 'a1314 . (address)) store church-make-addbox) (cons 'a1315 . (address)) store) church-address church-new-call)))) (cons 'a1316 . (address)) store ((church-force (cons 'a1317 . (address)) store church-make-with-proposer-call) (cons 'a1318 . (address)) store ((church-force (cons 'a1319 . (address)) store church-with-proposer-call-address) (cons 'a1320 . (address)) store church-call) ((church-force (cons 'a1321 . (address)) store church-list->lazy-list) (cons 'a1322 . (address)) store church-expr) ((church-force (cons 'a1323 . (address)) store church-with-proposer-call-proposer) (cons 'a1324 . (address)) store church-call) ((church-force (cons 'a1325 . (address)) store church-with-proposer-call-proc) (cons 'a1326 . (address)) store church-call))))) (cons 'a1327 . (address)) store ((church-force (cons 'a1328 . (address)) store church-rest) (cons 'a1329 . (address)) store church-first-entry)))) (cons 'a1330 . (address)) store ((church-force (cons 'a1331 . (address)) store church-first) (cons 'a1332 . (address)) store church-first-entry)))) (cons 'a1333 . (address)) store ((church-force (cons 'a1334 . (address)) store church-first) (cons 'a1335 . (address)) store ((church-force (cons 'a1336 . (address)) store church-addbox->alist) (cons 'a1337 . (address)) store church-with-proposer-calls))))) (church-verbose-init #f) (church-annealing-initializer (lambda (address store church-rej-steps church-temps:low->high church-temps->nfqp) ((church-force (cons 'a1338 . (address)) store (lambda (address store church-temps:high->low) ((church-force (cons 'a1339 . (address)) store (lambda (address store church-normal-form-proc) ((church-force (cons 'a1340 . (address)) store (lambda (address store church-initial-state) (letrec ((church-next-temp (lambda (address store church-temps church-mcmc-state) (if (church-force (cons 'a1341 . (address)) store ((church-force (cons 'a1342 . (address)) store church-=) (cons 'a1343 . (address)) store -inf.0 ((church-force (cons 'a1344 . (address)) store church-mcmc-state->score) (cons 'a1345 . (address)) store church-mcmc-state))) (begin (church-force (cons 'a1346 . (address)) store (if (church-force (cons 'a1347 . (address)) store church-verbose-init) (begin ((church-force (cons 'a1348 . (address)) store church-display) (cons 'a1349 . (address)) store "annealing-initializer: failed, restarting at top ...\n")) '(void))) ((church-force (cons 'a1350 . (address)) store church-annealing-initializer) (cons 'a1351 . (address)) store church-rej-steps church-temps:low->high church-temps->nfqp)) (if (church-force (cons 'a1352 . (address)) store ((church-force (cons 'a1353 . (address)) store church-null?) (cons 'a1354 . (address)) store church-temps)) (begin (church-force (cons 'a1355 . (address)) store (if (church-force (cons 'a1356 . (address)) store church-verbose-init) (begin ((church-force (cons 'a1357 . (address)) store church-display) (cons 'a1358 . (address)) store "annealing-initializer: succeeded!\n")) '(void))) church-mcmc-state) (begin (church-force (cons 'a1359 . (address)) store (if (church-force (cons 'a1360 . (address)) store church-verbose-init) (begin ((church-force (cons 'a1361 . (address)) store church-for-each) (cons 'a1362 . (address)) store church-display ((church-force (cons 'a1363 . (address)) store church-list) (cons 'a1364 . (address)) store "annealing-initializer:\n" " temps remaining: " ((church-force (cons 'a1365 . (address)) store church-length) (cons 'a1366 . (address)) store church-temps) "\n current temp: " ((church-force (cons 'a1367 . (address)) store church-first) (cons 'a1368 . (address)) store church-temps) "\n current val: " ((church-force (cons 'a1369 . (address)) store church-mcmc-state->query-value) (cons 'a1370 . (address)) store church-mcmc-state) "\n"))) '(void))) ((church-force (cons 'a1371 . (address)) store (lambda (address store church-nfqp) ((church-force (cons 'a1372 . (address)) store (lambda (address store church-rescored-state) ((church-force (cons 'a1373 . (address)) store (lambda (address store church-rej-state) ((church-force (cons 'a1374 . (address)) store church-next-temp) (cons 'a1375 . (address)) store ((church-force (cons 'a1376 . (address)) store church-rest) (cons 'a1377 . (address)) store church-temps) church-rej-state))) (cons 'a1378 . (address)) store ((church-force (cons 'a1379 . (address)) store ((church-force (cons 'a1380 . (address)) store church-basic-repeat-kernel) (cons 'a1381 . (address)) store church-rej-steps church-nfqp)) (cons 'a1382 . (address)) store church-rescored-state)))) (cons 'a1383 . (address)) store ((church-force (cons 'a1384 . (address)) store church-first) (cons 'a1385 . (address)) store ((church-force (cons 'a1386 . (address)) store church-counterfactual-update) (cons 'a1387 . (address)) store church-mcmc-state church-nfqp))))) (cons 'a1388 . (address)) store ((church-force (cons 'a1389 . (address)) store church-apply) (cons 'a1390 . (address)) store church-temps->nfqp ((church-force (cons 'a1391 . (address)) store church-first) (cons 'a1392 . (address)) store church-temps))))))))) ((church-force (cons 'a1393 . (address)) store church-next-temp) (cons 'a1394 . (address)) store ((church-force (cons 'a1395 . (address)) store church-rest) (cons 'a1396 . (address)) store church-temps:high->low) church-initial-state)))) (cons 'a1397 . (address)) store (begin (church-force (cons 'a1398 . (address)) store ((church-force (cons 'a1399 . (address)) store church-reset-store-xrp-draws) (cons 'a1400 . (address)) store)) ((church-force (cons 'a1401 . (address)) store church-rejection-initializer) (cons 'a1402 . (address)) store church-normal-form-proc))))) (cons 'a1403 . (address)) store ((church-force (cons 'a1404 . (address)) store church-apply) (cons 'a1405 . (address)) store church-temps->nfqp ((church-force (cons 'a1406 . (address)) store church-first) (cons 'a1407 . (address)) store church-temps:high->low))))) (cons 'a1408 . (address)) store ((church-force (cons 'a1409 . (address)) store church-reverse) (cons 'a1410 . (address)) store church-temps:low->high)))) (church-make-mh-kernel (lambda (address store church-proposal-distribution church-scorer) (lambda (address store church-state) ((church-force (cons 'a1411 . (address)) store (lambda (address store church-ret) ((church-force (cons 'a1412 . (address)) store (lambda (address store church-bw/fw) ((church-force (cons 'a1413 . (address)) store (lambda (address store church-proposal-state) ((church-force (cons 'a1414 . (address)) store (lambda (address store church-old-p) ((church-force (cons 'a1415 . (address)) store (lambda (address store church-new-p) ((church-force (cons 'a1416 . (address)) store (lambda (address store church-accept) ((church-force (cons 'a1417 . (address)) store (lambda (address store church-dummy) (if (church-force (cons 'a1418 . (address)) store church-accept) church-proposal-state church-state))) (cons 'a1419 . (address)) store ((church-force (cons 'a1420 . (address)) store church-reset-store-xrp-draws) (cons 'a1421 . (address)) store)))) (cons 'a1422 . (address)) store ((church-force (cons 'a1423 . (address)) store church-log-flip) (cons 'a1424 . (address)) store ((church-force (cons 'a1425 . (address)) store church-min) (cons 'a1426 . (address)) store 0.0 ((church-force (cons 'a1427 . (address)) store church-+) (cons 'a1428 . (address)) store ((church-force (cons 'a1429 . (address)) store church--) (cons 'a1430 . (address)) store church-new-p church-old-p) church-bw/fw)))))) (cons 'a1431 . (address)) store ((church-force (cons 'a1432 . (address)) store church-scorer) (cons 'a1433 . (address)) store church-proposal-state)))) (cons 'a1434 . (address)) store ((church-force (cons 'a1435 . (address)) store church-scorer) (cons 'a1436 . (address)) store church-state)))) (cons 'a1437 . (address)) store ((church-force (cons 'a1438 . (address)) store church-second) (cons 'a1439 . (address)) store church-ret)))) (cons 'a1440 . (address)) store ((church-force (cons 'a1441 . (address)) store church-first) (cons 'a1442 . (address)) store church-ret)))) (cons 'a1443 . (address)) store ((church-force (cons 'a1444 . (address)) store church-proposal-distribution) (cons 'a1445 . (address)) store church-state))))) (church-cycle-kernel (lambda (address store . church-kernels) (lambda (address store church-state) ((church-force (cons 'a1446 . (address)) store church-fold) (cons 'a1447 . (address)) store (lambda (address store church-k church-s) ((church-force (cons 'a1448 . (address)) store church-k) (cons 'a1449 . (address)) store church-s)) church-state church-kernels)))) (church-repeat-kernel (lambda (address store church-steps church-kernel) ((church-force (cons 'a1450 . (address)) store church-apply) (cons 'a1451 . (address)) store church-cycle-kernel ((church-force (cons 'a1452 . (address)) store church-make-list) (cons 'a1453 . (address)) store church-steps church-kernel)))) (church-basic-repeat-kernel (lambda (address store church-steps church-nfqp) ((church-force (cons 'a1454 . (address)) store church-repeat-kernel) (cons 'a1455 . (address)) store church-steps ((church-force (cons 'a1456 . (address)) store church-make-mh-kernel) (cons 'a1457 . (address)) store (lambda (address store church-state) ((church-force (cons 'a1458 . (address)) store church-basic-proposal-distribution) (cons 'a1459 . (address)) store church-state church-nfqp)) church-mcmc-state->score)))) (church-inference-timing #f) (church-repeated-mcmc-query-core (lambda (address store church-initializer church-kernel church-num-samples) ((church-force (cons 'a1460 . (address)) store (lambda (address store church-init-state) (begin (church-force (cons 'a1461 . (address)) store (if (church-force (cons 'a1462 . (address)) store church-inference-timing) (begin (church-force (cons 'a1463 . (address)) store ((church-force (cons 'a1464 . (address)) store church-display) (cons 'a1465 . (address)) store "initialized: ")) (church-force (cons 'a1466 . (address)) store ((church-force (cons 'a1467 . (address)) store church-display) (cons 'a1468 . (address)) store ((church-force (cons 'a1469 . (address)) store church-current-date) (cons 'a1470 . (address)) store))) ((church-force (cons 'a1471 . (address)) store church-display) (cons 'a1472 . (address)) store "\n")) '(void))) ((church-force (cons 'a1473 . (address)) store (lambda (address store church-ret) (begin (church-force (cons 'a1474 . (address)) store (if (church-force (cons 'a1475 . (address)) store church-inference-timing) (begin (church-force (cons 'a1476 . (address)) store ((church-force (cons 'a1477 . (address)) store church-display) (cons 'a1478 . (address)) store "done: ")) (church-force (cons 'a1479 . (address)) store ((church-force (cons 'a1480 . (address)) store church-display) (cons 'a1481 . (address)) store ((church-force (cons 'a1482 . (address)) store church-current-date) (cons 'a1483 . (address)) store))) ((church-force (cons 'a1484 . (address)) store church-display) (cons 'a1485 . (address)) store "\n")) '(void))) church-ret))) (cons 'a1486 . (address)) store ((church-force (cons 'a1487 . (address)) store church-mcmc-loop) (cons 'a1488 . (address)) store church-kernel church-init-state church-num-samples '()))))) (cons 'a1489 . (address)) store ((church-force (cons 'a1490 . (address)) store church-reset-with-proposer-calls) (cons 'a1491 . (address)) store ((church-force (cons 'a1492 . (address)) store church-initializer) (cons 'a1493 . (address)) store))))) (church-mcmc-loop (lambda (address store church-kernel church-state church-samples-left church-samples) (if (church-force (cons 'a1494 . (address)) store ((church-force (cons 'a1495 . (address)) store church-<) (cons 'a1496 . (address)) store church-samples-left 1)) ((church-force (cons 'a1497 . (address)) store church-reverse) (cons 'a1498 . (address)) store church-samples) ((church-force (cons 'a1499 . (address)) store church-mcmc-loop) (cons 'a1500 . (address)) store church-kernel ((church-force (cons 'a1501 . (address)) store church-kernel) (cons 'a1502 . (address)) store church-state) ((church-force (cons 'a1503 . (address)) store church--) (cons 'a1504 . (address)) store church-samples-left 1) ((church-force (cons 'a1505 . (address)) store church-pair) (cons 'a1506 . (address)) store ((church-force (cons 'a1507 . (address)) store church-mcmc-state->query-value) (cons 'a1508 . (address)) store church-state) church-samples))))) (church-mh-query (lambda (address store church-samples church-lag church-normal-form-proc) ((church-force (cons 'a1509 . (address)) store church-repeated-mcmc-query-core) (cons 'a1510 . (address)) store (lambda (address store) ((church-force (cons 'a1511 . (address)) store church-rejection-initializer) (cons 'a1512 . (address)) store church-normal-form-proc)) ((church-force (cons 'a1513 . (address)) store church-basic-repeat-kernel) (cons 'a1514 . (address)) store church-lag church-normal-form-proc) church-samples))) (church-mh-expr-query (lambda (address store church-samples church-lag church-normal-form-proc church-expr) ((church-force (cons 'a1515 . (address)) store (lambda (address store church-db) ((church-force (cons 'a1516 . (address)) store church-repeated-mcmc-query-core) (cons 'a1517 . (address)) store (lambda (address store) ((church-force (cons 'a1518 . (address)) store church-expr-initializer) (cons 'a1519 . (address)) store church-normal-form-proc church-expr)) ((church-force (cons 'a1520 . (address)) store church-basic-repeat-kernel) (cons 'a1521 . (address)) store church-lag church-normal-form-proc) church-samples))) (cons 'a1522 . (address)) store ((church-force (cons 'a1523 . (address)) store church-pretty-print) (cons 'a1524 . (address)) store ((church-force (cons 'a1525 . (address)) store church-list) (cons 'a1526 . (address)) store "in mh-expr-query" church-samples church-lag church-expr))))) (church-mh-query/annealed-init (lambda (address store church-temps church-samples church-lag church-rej-steps church-temps->nfqp) ((church-force (cons 'a1527 . (address)) store (lambda (address store church-normal-form-proc) ((church-force (cons 'a1528 . (address)) store church-repeated-mcmc-query-core) (cons 'a1529 . (address)) store (lambda (address store) ((church-force (cons 'a1530 . (address)) store church-annealing-initializer) (cons 'a1531 . (address)) store church-rej-steps church-temps church-temps->nfqp)) ((church-force (cons 'a1532 . (address)) store church-basic-repeat-kernel) (cons 'a1533 . (address)) store church-lag church-normal-form-proc) church-samples))) (cons 'a1534 . (address)) store ((church-force (cons 'a1535 . (address)) store church-apply) (cons 'a1536 . (address)) store church-temps->nfqp ((church-force (cons 'a1537 . (address)) store church-first) (cons 'a1538 . (address)) store church-temps))))) (church-psmc-query (lambda (address store church-temps church-popsize church-lag church-temps->nfqp) ((church-force (cons 'a1539 . (address)) store church-map) (cons 'a1540 . (address)) store church-mcmc-state->query-value ((church-force (cons 'a1541 . (address)) store church-smc-core) (cons 'a1542 . (address)) store church-temps church-popsize church-lag church-temps->nfqp)))) (church-smc-core (lambda (address store church-temps church-popsize church-lag church-temps->nfqp . church-start-address) ((church-force (cons 'a1543 . (address)) store (lambda (address store church-original-temps) (letrec ((church-smc (lambda (address store church-temps church-population church-weights) ((church-force (cons 'a1544 . (address)) store (lambda (address store church-rets) ((church-force (cons 'a1545 . (address)) store (lambda (address store church-new-population) ((church-force (cons 'a1546 . (address)) store (lambda (address store church-cd-bw/fw) ((church-force (cons 'a1547 . (address)) store (lambda (address store church-weights) ((church-force (cons 'a1548 . (address)) store (lambda (address store church-resample-distribution) ((church-force (cons 'a1549 . (address)) store (lambda (address store church-collapse?) (if (church-force (cons 'a1550 . (address)) store church-collapse?) ((church-force (cons 'a1551 . (address)) store (lambda (address store) (if (church-force (cons 'a1552 . (address)) store ((church-force (cons 'a1553 . (address)) store church-null?) (cons 'a1554 . (address)) store church-start-address)) '() ((church-force (cons 'a1555 . (address)) store church-smc-core) (cons 'a1556 . (address)) store church-original-temps ((church-force (cons 'a1557 . (address)) store church-increase-population) (cons 'a1558 . (address)) store church-popsize) church-lag church-temps->nfqp ((church-force (cons 'a1559 . (address)) store church-first) (cons 'a1560 . (address)) store church-start-address))))) (cons 'a1561 . (address)) store) ((church-force (cons 'a1562 . (address)) store (lambda (address store church-new2-population) ((church-force (cons 'a1563 . (address)) store (lambda (address store church-weights) ((church-force (cons 'a1564 . (address)) store (lambda (address store church-kernel) ((church-force (cons 'a1565 . (address)) store (lambda (address store church-new3-population) (begin (if (church-force (cons 'a1566 . (address)) store ((church-force (cons 'a1567 . (address)) store church-null?) (cons 'a1568 . (address)) store ((church-force (cons 'a1569 . (address)) store church-rest) (cons 'a1570 . (address)) store church-temps))) church-new3-population ((church-force (cons 'a1571 . (address)) store church-smc) (cons 'a1572 . (address)) store ((church-force (cons 'a1573 . (address)) store church-rest) (cons 'a1574 . (address)) store church-temps) church-new3-population church-weights))))) (cons 'a1575 . (address)) store ((church-force (cons 'a1576 . (address)) store church-map) (cons 'a1577 . (address)) store church-kernel church-new2-population)))) (cons 'a1578 . (address)) store ((church-force (cons 'a1579 . (address)) store church-repeat-kernel) (cons 'a1580 . (address)) store church-lag ((church-force (cons 'a1581 . (address)) store church-make-mh-kernel) (cons 'a1582 . (address)) store (lambda (address store church-state) ((church-force (cons 'a1583 . (address)) store church-basic-proposal-distribution) (cons 'a1584 . (address)) store church-state ((church-force (cons 'a1585 . (address)) store church-apply) (cons 'a1586 . (address)) store church-temps->nfqp ((church-force (cons 'a1587 . (address)) store church-first) (cons 'a1588 . (address)) store church-temps)))) church-mcmc-state->score))))) (cons 'a1589 . (address)) store ((church-force (cons 'a1590 . (address)) store church-make-list) (cons 'a1591 . (address)) store church-popsize 0)))) (cons 'a1592 . (address)) store ((church-force (cons 'a1593 . (address)) store church-repeat) (cons 'a1594 . (address)) store church-popsize (lambda (address store) (begin (church-force (cons 'a1595 . (address)) store ((church-force (cons 'a1596 . (address)) store church-reset-store-xrp-draws) (cons 'a1597 . (address)) store)) ((church-force (cons 'a1598 . (address)) store church-multinomial) (cons 'a1599 . (address)) store church-new-population church-resample-distribution)))))))) (cons 'a1600 . (address)) store ((church-force (cons 'a1601 . (address)) store church-nan?) (cons 'a1602 . (address)) store ((church-force (cons 'a1603 . (address)) store church-first) (cons 'a1604 . (address)) store church-resample-distribution))))) (cons 'a1605 . (address)) store ((church-force (cons 'a1606 . (address)) store church-map) (cons 'a1607 . (address)) store church-exp ((church-force (cons 'a1608 . (address)) store church-log-normalize) (cons 'a1609 . (address)) store church-weights))))) (cons 'a1610 . (address)) store ((church-force (cons 'a1611 . (address)) store church-map) (cons 'a1612 . (address)) store (lambda (address store church-old-weight church-old-state church-new-state church-cd-bw/fw) ((church-force (cons 'a1613 . (address)) store church-+) (cons 'a1614 . (address)) store church-old-weight ((church-force (cons 'a1615 . (address)) store church--) (cons 'a1616 . (address)) store ((church-force (cons 'a1617 . (address)) store church-mcmc-state->score) (cons 'a1618 . (address)) store church-new-state) ((church-force (cons 'a1619 . (address)) store church-mcmc-state->score) (cons 'a1620 . (address)) store church-old-state)) church-cd-bw/fw)) church-weights church-population church-new-population church-cd-bw/fw)))) (cons 'a1621 . (address)) store ((church-force (cons 'a1622 . (address)) store church-map) (cons 'a1623 . (address)) store church-second church-rets)))) (cons 'a1624 . (address)) store ((church-force (cons 'a1625 . (address)) store church-map) (cons 'a1626 . (address)) store church-first church-rets)))) (cons 'a1627 . (address)) store ((church-force (cons 'a1628 . (address)) store church-map) (cons 'a1629 . (address)) store (lambda (address store church-state) ((church-force (cons 'a1630 . (address)) store church-counterfactual-update) (cons 'a1631 . (address)) store church-state ((church-force (cons 'a1632 . (address)) store church-apply) (cons 'a1633 . (address)) store church-temps->nfqp ((church-force (cons 'a1634 . (address)) store church-first) (cons 'a1635 . (address)) store church-temps)))) church-population))))) ((church-force (cons 'a1636 . (address)) store church-smc) (cons 'a1637 . (address)) store church-temps ((church-force (cons 'a1638 . (address)) store church-repeat) (cons 'a1639 . (address)) store church-popsize (lambda (address store) (begin (church-force (cons 'a1640 . (address)) store ((church-force (cons 'a1641 . (address)) store church-reset-store-xrp-draws) (cons 'a1642 . (address)) store)) (if (church-force (cons 'a1643 . (address)) store ((church-force (cons 'a1644 . (address)) store church-null?) (cons 'a1645 . (address)) store church-start-address)) ((church-force (cons 'a1646 . (address)) store church-reset-with-proposer-calls) (cons 'a1647 . (address)) store ((church-force (cons 'a1648 . (address)) store church-rejection-initializer) (cons 'a1649 . (address)) store ((church-force (cons 'a1650 . (address)) store church-apply) (cons 'a1651 . (address)) store church-temps->nfqp ((church-force (cons 'a1652 . (address)) store church-first) (cons 'a1653 . (address)) store church-temps)))) ((church-force (cons 'a1654 . (address)) store church-reset-with-proposer-calls) (cons 'a1655 . (address)) store ((church-force (cons 'a1656 . (address)) store church-rejection-addressed-initializer) (cons 'a1657 . (address)) store ((church-force (cons 'a1658 . (address)) store church-apply) (cons 'a1659 . (address)) store church-temps->nfqp ((church-force (cons 'a1660 . (address)) store church-first) (cons 'a1661 . (address)) store church-temps)) ((church-force (cons 'a1662 . (address)) store church-first) (cons 'a1663 . (address)) store church-start-address))))))) ((church-force (cons 'a1664 . (address)) store church-make-list) (cons 'a1665 . (address)) store church-popsize 0))))) (cons 'a1666 . (address)) store church-temps))) (church-increase-population (lambda (address store church-old-pop-size) ((church-force (cons 'a1667 . (address)) store church-*) (cons 'a1668 . (address)) store church-old-pop-size 2))) (church-smc-eval-obs-marginalize (lambda (address store church-gen-sexpr church-popsize) ((church-force (cons 'a1669 . (address)) store church-make-stateless-xrp) (cons 'a1670 . (address)) store 'marginalized-eq-obs-gen-sexpr (lambda (address store church-obs) ((church-force (cons 'a1671 . (address)) store church-lazy-equal?) (cons 'a1672 . (address)) store ((church-force (cons 'a1673 . (address)) store church-gen-sexpr) (cons 'a1674 . (address)) store) church-obs)) (lambda (address store church-args church-val) (if (church-force (cons 'a1675 . (address)) store church-val) ((church-force (cons 'a1676 . (address)) store (lambda (address store church-samples) ((church-force (cons 'a1677 . (address)) store (lambda (address store church-samples) ((church-force (cons 'a1678 . (address)) store (lambda (address store church-scores) ((church-force (cons 'a1679 . (address)) store (lambda (address store church-score) church-score)) (cons 'a1680 . (address)) store (if (church-force (cons 'a1681 . (address)) store ((church-force (cons 'a1682 . (address)) store church-null?) (cons 'a1683 . (address)) store church-scores)) -inf.0 ((church-force (cons 'a1684 . (address)) store church-apply) (cons 'a1685 . (address)) store church-log-sum-exp church-scores))))) (cons 'a1686 . (address)) store ((church-force (cons 'a1687 . (address)) store church-map) (cons 'a1688 . (address)) store church-mcmc-state->score church-samples)))) (cons 'a1689 . (address)) store ((church-force (cons 'a1690 . (address)) store church-fold) (cons 'a1691 . (address)) store (lambda (address store church-s church-a) (if (church-force (cons 'a1692 . (address)) store ((church-force (cons 'a1693 . (address)) store church-member) (cons 'a1694 . (address)) store ((church-force (cons 'a1695 . (address)) store church-mcmc-state->addrval) (cons 'a1696 . (address)) store church-s) ((church-force (cons 'a1697 . (address)) store church-map) (cons 'a1698 . (address)) store church-mcmc-state->addrval church-a))) church-a ((church-force (cons 'a1699 . (address)) store church-pair) (cons 'a1700 . (address)) store church-s church-a))) '() church-samples)))) (cons 'a1701 . (address)) store ((church-force (cons 'a1702 . (address)) store church-smc-core) (cons 'a1703 . (address)) store ((church-force (cons 'a1704 . (address)) store church-map) (cons 'a1705 . (address)) store church-list ((church-force (cons 'a1706 . (address)) store church-iota) (cons 'a1707 . (address)) store ((church-force (cons 'a1708 . (address)) store church-+) (cons 'a1709 . (address)) store 1 ((church-force (cons 'a1710 . (address)) store church-lazy-list-size) (cons 'a1711 . (address)) store ((church-force (cons 'a1712 . (address)) store church-first) (cons 'a1713 . (address)) store church-args))))) church-popsize 0 (lambda (address store church-depth) (lambda (address store) ((church-force (cons 'a1714 . (address)) store (lambda (address store church-s) ((church-force (cons 'a1715 . (address)) store church-pair) (cons 'a1716 . (address)) store ((church-force (cons 'a1717 . (address)) store church-lazy-equal?) (cons 'a1718 . (address)) store church-s ((church-force (cons 'a1719 . (address)) store church-first) (cons 'a1720 . (address)) store church-args) church-depth) (lambda (address store) ((church-force (cons 'a1721 . (address)) store church-first) (cons 'a1722 . (address)) store ((church-force (cons 'a1723 . (address)) store church-lazy-list->list) (cons 'a1724 . (address)) store church-s church-depth)))))) (cons 'a1725 . (address)) store ((church-force (cons 'a1726 . (address)) store church-gen-sexpr) (cons 'a1727 . (address)) store)))))) -inf.0))))) (church-mcmc-state->addrval (lambda (address store church-s) ((church-force (cons 'a1728 . (address)) store church-map) (cons 'a1729 . (address)) store (lambda (address store church-d) ((church-force (cons 'a1730 . (address)) store church-pair) (cons 'a1731 . (address)) store ((church-force (cons 'a1732 . (address)) store church-xrp-draw-address) (cons 'a1733 . (address)) store church-d) ((church-force (cons 'a1734 . (address)) store church-xrp-draw-value) (cons 'a1735 . (address)) store church-d))) ((church-force (cons 'a1736 . (address)) store church-mcmc-state->xrp-draws) (cons 'a1737 . (address)) store church-s)))) (church-log-sum-exp (lambda (address store . church-log-vals) ((church-force (cons 'a1738 . (address)) store (lambda (address store church-max-log-val) (if (church-force (cons 'a1739 . (address)) store ((church-force (cons 'a1740 . (address)) store church-equal?) (cons 'a1741 . (address)) store church-max-log-val -inf.0)) -inf.0 ((church-force (cons 'a1742 . (address)) store church-+) (cons 'a1743 . (address)) store ((church-force (cons 'a1744 . (address)) store church-log) (cons 'a1745 . (address)) store ((church-force (cons 'a1746 . (address)) store church-exact->inexact) (cons 'a1747 . (address)) store ((church-force (cons 'a1748 . (address)) store church-sum) (cons 'a1749 . (address)) store ((church-force (cons 'a1750 . (address)) store church-map) (cons 'a1751 . (address)) store (lambda (address store church-val) ((church-force (cons 'a1752 . (address)) store church-exp) (cons 'a1753 . (address)) store ((church-force (cons 'a1754 . (address)) store church--) (cons 'a1755 . (address)) store church-val church-max-log-val))) church-log-vals)))) church-max-log-val)))) (cons 'a1756 . (address)) store ((church-force (cons 'a1757 . (address)) store church-apply) (cons 'a1758 . (address)) store church-max church-log-vals)))) (church-log-normalize (lambda (address store church-log-scores) ((church-force (cons 'a1759 . (address)) store (lambda (address store church-score-sum) ((church-force (cons 'a1760 . (address)) store church-map) (cons 'a1761 . (address)) store (lambda (address store church-score) ((church-force (cons 'a1762 . (address)) store church--) (cons 'a1763 . (address)) store church-score church-score-sum)) church-log-scores))) (cons 'a1764 . (address)) store ((church-force (cons 'a1765 . (address)) store church-apply) (cons 'a1766 . (address)) store church-log-sum-exp church-log-scores)))) (church-growth-noise 0.2) (church-label-noise 0.2) (church-labels '(a b)) (church-root '(a)) (church-node (lambda (address store church-item0 . church-items) (if (church-force (cons 'a1767 . (address)) store ((church-force (cons 'a1768 . (address)) store church-null?) (cons 'a1769 . (address)) store ((church-force (cons 'a1770 . (address)) store church-list) (cons 'a1771 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-items))))) ((church-force (cons 'a1772 . (address)) store church-list) (cons 'a1773 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1774 . (address)) store church-lazy-pair) (cons 'a1775 . (address)) store ((church-force (cons 'a1776 . (address)) store church-list) (cons 'a1777 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1778 . (address)) store church-noisy-label) (cons 'a1779 . (address)) store ((church-force (cons 'a1780 . (address)) store church-list) (cons 'a1781 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-item0))))))) ((church-force (cons 'a1782 . (address)) store church-list) (cons 'a1783 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) '()))))))) ((church-force (cons 'a1784 . (address)) store church-list) (cons 'a1785 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1786 . (address)) store church-lazy-pair) (cons 'a1787 . (address)) store ((church-force (cons 'a1788 . (address)) store church-list) (cons 'a1789 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1790 . (address)) store church-noisy-label) (cons 'a1791 . (address)) store ((church-force (cons 'a1792 . (address)) store church-list) (cons 'a1793 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-item0))))))) ((church-force (cons 'a1794 . (address)) store church-list) (cons 'a1795 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) (if (church-force (cons 'a1796 . (address)) store ((church-force (cons 'a1797 . (address)) store church-flip) (cons 'a1798 . (address)) store ((church-force (cons 'a1799 . (address)) store church-list) (cons 'a1800 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1801 . (address)) store church--) (cons 'a1802 . (address)) store ((church-force (cons 'a1803 . (address)) store church-list) (cons 'a1804 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 1))) ((church-force (cons 'a1805 . (address)) store church-list) (cons 'a1806 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-growth-noise))))))))) ((church-force (cons 'a1807 . (address)) store church-list) (cons 'a1808 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1809 . (address)) store church-apply) (cons 'a1810 . (address)) store ((church-force (cons 'a1811 . (address)) store church-list) (cons 'a1812 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-node))) ((church-force (cons 'a1813 . (address)) store church-list) (cons 'a1814 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-items))))))) ((church-force (cons 'a1815 . (address)) store church-list) (cons 'a1816 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) '())))))))))))))) (church-noisy-label (lambda (address store church-x) (if (church-force (cons 'a1817 . (address)) store ((church-force (cons 'a1818 . (address)) store church-symbol?) (cons 'a1819 . (address)) store ((church-force (cons 'a1820 . (address)) store church-list) (cons 'a1821 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-x))))) ((church-force (cons 'a1822 . (address)) store church-list) (cons 'a1823 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) (if (church-force (cons 'a1824 . (address)) store ((church-force (cons 'a1825 . (address)) store church-flip) (cons 'a1826 . (address)) store ((church-force (cons 'a1827 . (address)) store church-list) (cons 'a1828 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) ((church-force (cons 'a1829 . (address)) store church--) (cons 'a1830 . (address)) store ((church-force (cons 'a1831 . (address)) store church-list) (cons 'a1832 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 1))) ((church-force (cons 'a1833 . (address)) store church-list) (cons 'a1834 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-label-noise))))))))) ((church-force (cons 'a1835 . (address)) store church-list) (cons 'a1836 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-x))) ((church-force (cons 'a1837 . (address)) store church-list) (cons 'a1838 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) (if (church-force (cons 'a1839 . (address)) store ((church-force (cons 'a1840 . (address)) store church-equal?) (cons 'a1841 . (address)) store ((church-force (cons 'a1842 . (address)) store church-list) (cons 'a1843 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-x))) ((church-force (cons 'a1844 . (address)) store church-list) (cons 'a1845 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 'a))))) ((church-force (cons 'a1846 . (address)) store church-list) (cons 'a1847 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 'b))) ((church-force (cons 'a1848 . (address)) store church-list) (cons 'a1849 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) 'a))))))))))) ((church-force (cons 'a1850 . (address)) store church-list) (cons 'a1851 . (address)) store 'delayed ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store) church-x)))))) (church-time-it (lambda (address store church-proc . church-name) (lambda (address store . church-args) ((church-force (cons 'a1852 . (address)) store (lambda (address store church-start-time church-value church-end-time) (begin (church-force (cons 'a1853 . (address)) store ((church-force (cons 'a1854 . (address)) store church-for-each) (cons 'a1855 . (address)) store church-display ((church-force (cons 'a1856 . (address)) store church-list) (cons 'a1857 . (address)) store church-name " run-time:" ((church-force (cons 'a1858 . (address)) store church-time-second) (cons 'a1859 . (address)) store ((church-force (cons 'a1860 . (address)) store church-time-difference) (cons 'a1861 . (address)) store church-start-time church-end-time)) "\n"))) church-value))) (cons 'a1862 . (address)) store ((church-force (cons 'a1863 . (address)) store church-current-time) (cons 'a1864 . (address)) store) ((church-force (cons 'a1865 . (address)) store church-apply) (cons 'a1866 . (address)) store church-proc church-args) ((church-force (cons 'a1867 . (address)) store church-current-time) (cons 'a1868 . (address)) store))))) (church-evaluates?-test (lambda (address store church-name church-value) (begin ((church-force (cons 'a1869 . (address)) store church-for-each) (cons 'a1870 . (address)) store church-display ((church-force (cons 'a1871 . (address)) store church-list) (cons 'a1872 . (address)) store church-name " value:" church-value "...passed!"))))) (church-equal?-test (lambda (address store church-name church-test-val church-true-val) (begin (church-force (cons 'a1873 . (address)) store ((church-force (cons 'a1874 . (address)) store church-display) (cons 'a1875 . (address)) store "deterministic test: ")) (church-force (cons 'a1876 . (address)) store ((church-force (cons 'a1877 . (address)) store church-display) (cons 'a1878 . (address)) store church-name)) (if (church-force (cons 'a1879 . (address)) store ((church-force (cons 'a1880 . (address)) store church-not) (cons 'a1881 . (address)) store ((church-force (cons 'a1882 . (address)) store church-equal?) (cons 'a1883 . (address)) store church-test-val church-true-val))) ((church-force (cons 'a1884 . (address)) store church-for-each) (cons 'a1885 . (address)) store church-display ((church-force (cons 'a1886 . (address)) store church-list) (cons 'a1887 . (address)) store ".. failed! true value: " church-true-val ", test value: " church-test-val "\n")) ((church-force (cons 'a1888 . (address)) store church-display) (cons 'a1889 . (address)) store ".. passed.\n"))))) (church-timed-equal?-test ((church-force (cons 'a1890 . (address)) store church-time-it) (cons 'a1891 . (address)) store church-equal?-test)) (church-member?-test (lambda (address store church-name church-test-val church-set-of-true-vals) (begin (church-force (cons 'a1892 . (address)) store ((church-force (cons 'a1893 . (address)) store church-display) (cons 'a1894 . (address)) store "deterministic test: ")) (church-force (cons 'a1895 . (address)) store ((church-force (cons 'a1896 . (address)) store church-display) (cons 'a1897 . (address)) store church-name)) (if (church-force (cons 'a1898 . (address)) store ((church-force (cons 'a1899 . (address)) store church-not) (cons 'a1900 . (address)) store ((church-force (cons 'a1901 . (address)) store church-member) (cons 'a1902 . (address)) store church-test-val church-set-of-true-vals))) ((church-force (cons 'a1903 . (address)) store church-for-each) (cons 'a1904 . (address)) store church-display ((church-force (cons 'a1905 . (address)) store church-list) (cons 'a1906 . (address)) store " true values: " church-set-of-true-vals ", test value: " church-test-val ".. failed!\n")) ((church-force (cons 'a1907 . (address)) store church-for-each) (cons 'a1908 . (address)) store church-display ((church-force (cons 'a1909 . (address)) store church-list) (cons 'a1910 . (address)) store " true values: " church-set-of-true-vals ", test-value: " church-test-val ".. passed.\n")))))) (church-with-proposer-test (lambda (address store church-distribution church-with-proposer-distribution church-expectation-fn church-true-expectation church-tolerance church-name) (begin (church-force (cons 'a1911 . (address)) store ((church-force (cons 'a1912 . (address)) store church-pretty-print) (cons 'a1913 . (address)) store church-name)) (church-force (cons 'a1914 . (address)) store ((church-force (cons 'a1915 . (address)) store church-display) (cons 'a1916 . (address)) store "with-proposer NOT used....")) (church-force (cons 'a1917 . (address)) store ((church-force (cons 'a1918 . (address)) store church-check-test) (cons 'a1919 . (address)) store church-distribution church-expectation-fn church-true-expectation church-tolerance church-name)) (church-force (cons 'a1920 . (address)) store ((church-force (cons 'a1921 . (address)) store church-display) (cons 'a1922 . (address)) store "with-proposer used....")) ((church-force (cons 'a1923 . (address)) store church-check-test) (cons 'a1924 . (address)) store church-with-proposer-distribution church-expectation-fn church-true-expectation church-tolerance church-name)))) (church-check-test (lambda (address store church-info church-expectation-fn church-true-expectation church-tolerance church-name) (begin ((church-force (cons 'a1925 . (address)) store (lambda (address store church-estimates) ((church-force (cons 'a1926 . (address)) store (lambda (address store church-errors) ((church-force (cons 'a1927 . (address)) store (lambda (address store church-mean-abs-error) (if (church-force (cons 'a1928 . (address)) store ((church-force (cons 'a1929 . (address)) store church->) (cons 'a1930 . (address)) store church-mean-abs-error church-tolerance)) ((church-force (cons 'a1931 . (address)) store church-for-each) (cons 'a1932 . (address)) store church-display ((church-force (cons 'a1933 . (address)) store church-list) (cons 'a1934 . (address)) store church-name ".. failed! true expectation: " church-true-expectation ", test mean: " ((church-force (cons 'a1935 . (address)) store church-*) (cons 'a1936 . (address)) store ((church-force (cons 'a1937 . (address)) store church-mean) (cons 'a1938 . (address)) store church-estimates) 1.0) "\n")) ((church-force (cons 'a1939 . (address)) store church-for-each) (cons 'a1940 . (address)) store church-display ((church-force (cons 'a1941 . (address)) store church-list) (cons 'a1942 . (address)) store church-name " passed. true expectation: " church-true-expectation ", test mean: " ((church-force (cons 'a1943 . (address)) store church-*) (cons 'a1944 . (address)) store ((church-force (cons 'a1945 . (address)) store church-mean) (cons 'a1946 . (address)) store church-estimates) 1.0) "\n"))))) (cons 'a1947 . (address)) store ((church-force (cons 'a1948 . (address)) store church-mean) (cons 'a1949 . (address)) store church-errors)))) (cons 'a1950 . (address)) store ((church-force (cons 'a1951 . (address)) store church-map) (cons 'a1952 . (address)) store (lambda (address store church-estimate) ((church-force (cons 'a1953 . (address)) store church-abs) (cons 'a1954 . (address)) store ((church-force (cons 'a1955 . (address)) store church--) (cons 'a1956 . (address)) store church-estimate church-true-expectation))) church-estimates)))) (cons 'a1957 . (address)) store ((church-force (cons 'a1958 . (address)) store church-map) (cons 'a1959 . (address)) store (lambda (address store church-run) ((church-force (cons 'a1960 . (address)) store church-mean) (cons 'a1961 . (address)) store ((church-force (cons 'a1962 . (address)) store church-map) (cons 'a1963 . (address)) store church-expectation-fn church-run))) church-info))))) (church-node-eval (lambda (address store church-exp church-env) ((church-force (cons 'a1964 . (address)) store ((church-force (cons 'a1965 . (address)) store church-analyze) (cons 'a1966 . (address)) store church-exp)) (cons 'a1967 . (address)) store church-env))) (church-analyze (lambda (address store church-exp) (if (church-force (cons 'a1968 . (address)) store ((church-force (cons 'a1969 . (address)) store church-quoted?) (cons 'a1970 . (address)) store church-exp)) ((church-force (cons 'a1971 . (address)) store church-analyze-quoted) (cons 'a1972 . (address)) store church-exp) (if (church-force (cons 'a1973 . (address)) store ((church-force (cons 'a1974 . (address)) store church-application?) (cons 'a1975 . (address)) store church-exp)) ((church-force (cons 'a1976 . (address)) store church-analyze-application) (cons 'a1977 . (address)) store church-exp) (lambda (address store church-env) "analysis lost"))))) (church-quoted? (lambda (address store church-exp) ((church-force (cons 'a1978 . (address)) store church-tagged-list?) (cons 'a1979 . (address)) store church-exp 'quote))) (church-analyze-quoted (lambda (address store church-exp) ((church-force (cons 'a1980 . (address)) store (lambda (address store church-qval) (lambda (address store church-env) church-qval))) (cons 'a1981 . (address)) store ((church-force (cons 'a1982 . (address)) store church-text-of-quotation) (cons 'a1983 . (address)) store church-exp)))) (church-text-of-quotation church-second) (church-tagged-list? (lambda (address store church-exp church-tag) (if (church-force (cons 'a1984 . (address)) store ((church-force (cons 'a1985 . (address)) store church-pair?) (cons 'a1986 . (address)) store church-exp)) ((church-force (cons 'a1987 . (address)) store church-eq?) (cons 'a1988 . (address)) store ((church-force (cons 'a1989 . (address)) store church-first) (cons 'a1990 . (address)) store church-exp) church-tag) #f))) (church-application? (lambda (address store church-exp) ((church-force (cons 'a1991 . (address)) store church-pair?) (cons 'a1992 . (address)) store church-exp))) (church-analyze-application (lambda (address store church-exp) ((church-force (cons 'a1993 . (address)) store (lambda (address store church-fproc church-aprocs) (lambda (address store church-env) ((church-force (cons 'a1994 . (address)) store church-execute-application) (cons 'a1995 . (address)) store ((church-force (cons 'a1996 . (address)) store church-fproc) (cons 'a1997 . (address)) store church-env) ((church-force (cons 'a1998 . (address)) store church-map) (cons 'a1999 . (address)) store (lambda (address store church-aproc) ((church-force (cons 'a2000 . (address)) store church-aproc) (cons 'a2001 . (address)) store church-env)) church-aprocs))))) (cons 'a2002 . (address)) store ((church-force (cons 'a2003 . (address)) store church-analyze) (cons 'a2004 . (address)) store ((church-force (cons 'a2005 . (address)) store church-operator) (cons 'a2006 . (address)) store church-exp)) ((church-force (cons 'a2007 . (address)) store church-map) (cons 'a2008 . (address)) store church-analyze ((church-force (cons 'a2009 . (address)) store church-operands) (cons 'a2010 . (address)) store church-exp))))) (church-operator church-first) (church-operands church-rest) (church-execute-application (lambda (address store church-proc church-args) (if (church-force (cons 'a2011 . (address)) store ((church-force (cons 'a2012 . (address)) store church-primitive-procedure?) (cons 'a2013 . (address)) store church-proc)) ((church-force (cons 'a2014 . (address)) store church-apply) (cons 'a2015 . (address)) store church-proc church-args) ((church-force (cons 'a2016 . (address)) store church-error) (cons 'a2017 . (address)) store "Unknown procedure type -- EXECUTE-APPLICATION" church-proc)))) (church-primitive-procedure? (lambda (address store church-proc) ((church-force (cons 'a2018 . (address)) store church-tagged-list?) (cons 'a2019 . (address)) store church-proc 'primitive))) (church-apply-primitive-procedure (lambda (address store church-proc church-args) ((church-force (cons 'a2020 . (address)) store church-apply) (cons 'a2021 . (address)) store ((church-force (cons 'a2022 . (address)) store church-primitive-implementation) (cons 'a2023 . (address)) store church-proc) church-args))) (church-primitive-implementation (lambda (address store church-proc) ((church-force (cons 'a2024 . (address)) store church-second) (cons 'a2025 . (address)) store church-proc))) (church-learn-model (lambda (address store church-data) ((church-force (cons 'a2026 . (address)) store (lambda (address store church-initial-sexpr) ((church-force (cons 'a2027 . (address)) store (lambda (address store church-learned-sexpr) ((church-force (cons 'a2028 . (address)) store (lambda (address store church-model) (begin (church-force (cons 'a2029 . (address)) store ((church-force (cons 'a2030 . (address)) store church-pretty-print) (cons 'a2031 . (address)) store ((church-force (cons 'a2032 . (address)) store church-list) (cons 'a2033 . (address)) store "compressed-program:" church-learned-sexpr "size: " ((church-force (cons 'a2034 . (address)) store church-size) (cons 'a2035 . (address)) store church-learned-sexpr)))) church-model))) (cons 'a2036 . (address)) store (lambda (address store) ((church-force (cons 'a2037 . (address)) store church-lazy-list->all-list) (cons 'a2038 . (address)) store ((church-force (cons 'a2039 . (address)) store church-eval) (cons 'a2040 . (address)) store church-learned-sexpr)))))) (cons 'a2041 . (address)) store ((church-force (cons 'a2042 . (address)) store church-beam-learn) (cons 'a2043 . (address)) store church-data church-initial-sexpr)))) (cons 'a2044 . (address)) store ((church-force (cons 'a2045 . (address)) store church-make-initial-sexpr) (cons 'a2046 . (address)) store church-data)))) (church-make-initial-sexpr (lambda (address store church-data) ((church-force (cons 'a2047 . (address)) store (lambda (address store church-literal-sexprs) ((church-force (cons 'a2048 . (address)) store church-list) (cons 'a2049 . (address)) store 'uniform-draw ((church-force (cons 'a2050 . (address)) store church-pair) (cons 'a2051 . (address)) store 'list church-literal-sexprs)))) (cons 'a2052 . (address)) store ((church-force (cons 'a2053 . (address)) store church-map) (cons 'a2054 . (address)) store church-tree->program church-data)))) (church-beam-learn (lambda (address store church-data church-sexpr) church-sexpr)) (church-beam-learn-search-compressions (lambda (address store church-data church-beam-size church-program church-size-weight church-score-weight) ((church-force (cons 'a2055 . (address)) store church-my-iterated-compressions) (cons 'a2056 . (address)) store (lambda (address store church-progs) ((church-force (cons 'a2057 . (address)) store church-best-n) (cons 'a2058 . (address)) store church-beam-size ((church-force (cons 'a2059 . (address)) store church-unique-programs) (cons 'a2060 . (address)) store church-progs) church-data church-size-weight church-score-weight)) church-program))) (church-my-iterated-compressions (lambda (address store church-cfilter church-program) ((church-force (cons 'a2061 . (address)) store (lambda (address store church-compressed-programs) ((church-force (cons 'a2062 . (address)) store church-append) (cons 'a2063 . (address)) store church-compressed-programs ((church-force (cons 'a2064 . (address)) store church-apply) (cons 'a2065 . (address)) store church-append ((church-force (cons 'a2066 . (address)) store church-map) (cons 'a2067 . (address)) store (lambda (address store church-prog) ((church-force (cons 'a2068 . (address)) store church-my-iterated-compressions) (cons 'a2069 . (address)) store church-cfilter church-prog)) church-compressed-programs))))) (cons 'a2070 . (address)) store ((church-force (cons 'a2071 . (address)) store church-cfilter) (cons 'a2072 . (address)) store ((church-force (cons 'a2073 . (address)) store church-compressions) (cons 'a2074 . (address)) store church-program))))) (church-best-n (lambda (address store church-n church-programs church-data church-size-weight church-score-weight) ((church-force (cons 'a2075 . (address)) store church-max-take) (cons 'a2076 . (address)) store ((church-force (cons 'a2077 . (address)) store church-sort-by-score-and-size) (cons 'a2078 . (address)) store church-programs church-data church-size-weight church-score-weight) church-n))) (church-sort-by-score-and-size (lambda (address store church-programs church-data church-size-weight church-score-weight) ((church-force (cons 'a2079 . (address)) store (lambda (address store church-program-sizes) ((church-force (cons 'a2080 . (address)) store (lambda (address store church-program-scores) ((church-force (cons 'a2081 . (address)) store (lambda (address store church-total-weight) ((church-force (cons 'a2082 . (address)) store (lambda (address store church-db) ((church-force (cons 'a2083 . (address)) store (lambda (address store church-programs-with-weights) ((church-force (cons 'a2084 . (address)) store (lambda (address store church-weight<) ((church-force (cons 'a2085 . (address)) store church-map) (cons 'a2086 . (address)) store church-first ((church-force (cons 'a2087 . (address)) store church-my-list-sort) (cons 'a2088 . (address)) store church-weight< church-programs-with-weights)))) (cons 'a2089 . (address)) store (lambda (address store church-a church-b) ((church-force (cons 'a2090 . (address)) store church-<) (cons 'a2091 . (address)) store ((church-force (cons 'a2092 . (address)) store church-second) (cons 'a2093 . (address)) store church-a) ((church-force (cons 'a2094 . (address)) store church-second) (cons 'a2095 . (address)) store church-b)))))) (cons 'a2096 . (address)) store ((church-force (cons 'a2097 . (address)) store church-zip) (cons 'a2098 . (address)) store church-programs church-total-weight)))) (cons 'a2099 . (address)) store ((church-force (cons 'a2100 . (address)) store church-pretty-print) (cons 'a2101 . (address)) store ((church-force (cons 'a2102 . (address)) store church-zip) (cons 'a2103 . (address)) store church-programs church-program-sizes church-program-scores))))) (cons 'a2104 . (address)) store ((church-force (cons 'a2105 . (address)) store church-combine-size-score) (cons 'a2106 . (address)) store church-program-sizes church-program-scores church-size-weight church-score-weight)))) (cons 'a2107 . (address)) store ((church-force (cons 'a2108 . (address)) store church-map) (cons 'a2109 . (address)) store ((church-force (cons 'a2110 . (address)) store church-compose) (cons 'a2111 . (address)) store (lambda (address store church-prog) ((church-force (cons 'a2112 . (address)) store church-scoring) (cons 'a2113 . (address)) store church-prog church-data 10)) church-program->sexpr) church-programs)))) (cons 'a2114 . (address)) store ((church-force (cons 'a2115 . (address)) store church-map) (cons 'a2116 . (address)) store ((church-force (cons 'a2117 . (address)) store church-compose) (cons 'a2118 . (address)) store church-size church-program->sexpr) church-programs)))) (church-my-list-sort (lambda (address store church-compare church-lst) (if (church-force (cons 'a2119 . (address)) store ((church-force (cons 'a2120 . (address)) store church-null?) (cons 'a2121 . (address)) store church-lst)) '() ((church-force (cons 'a2122 . (address)) store (lambda (address store church-pivot) ((church-force (cons 'a2123 . (address)) store (lambda (address store church-lst) ((church-force (cons 'a2124 . (address)) store (lambda (address store church-lessthan+greaterthan) ((church-force (cons 'a2125 . (address)) store church-append) (cons 'a2126 . (address)) store ((church-force (cons 'a2127 . (address)) store church-my-list-sort) (cons 'a2128 . (address)) store church-compare ((church-force (cons 'a2129 . (address)) store church-first) (cons 'a2130 . (address)) store church-lessthan+greaterthan)) ((church-force (cons 'a2131 . (address)) store church-pair) (cons 'a2132 . (address)) store church-pivot ((church-force (cons 'a2133 . (address)) store church-my-list-sort) (cons 'a2134 . (address)) store church-compare ((church-force (cons 'a2135 . (address)) store church-second) (cons 'a2136 . (address)) store church-lessthan+greaterthan)))))) (cons 'a2137 . (address)) store ((church-force (cons 'a2138 . (address)) store church-my-partition) (cons 'a2139 . (address)) store church-compare church-pivot church-lst)))) (cons 'a2140 . (address)) store ((church-force (cons 'a2141 . (address)) store church-rest) (cons 'a2142 . (address)) store church-lst)))) (cons 'a2143 . (address)) store ((church-force (cons 'a2144 . (address)) store church-first) (cons 'a2145 . (address)) store church-lst))))) (church-my-partition (lambda (address store church-compare church-pivot church-lst) (if (church-force (cons 'a2146 . (address)) store ((church-force (cons 'a2147 . (address)) store church-null?) (cons 'a2148 . (address)) store church-lst)) ((church-force (cons 'a2149 . (address)) store church-list) (cons 'a2150 . (address)) store '() '()) ((church-force (cons 'a2151 . (address)) store (lambda (address store church-comparestrue+comparesfalse) ((church-force (cons 'a2152 . (address)) store (lambda (address store church-comparestrue) ((church-force (cons 'a2153 . (address)) store (lambda (address store church-comparesfalse) ((church-force (cons 'a2154 . (address)) store (lambda (address store church-current-item) (if (church-force (cons 'a2155 . (address)) store ((church-force (cons 'a2156 . (address)) store church-compare) (cons 'a2157 . (address)) store church-current-item church-pivot)) ((church-force (cons 'a2158 . (address)) store church-list) (cons 'a2159 . (address)) store ((church-force (cons 'a2160 . (address)) store church-pair) (cons 'a2161 . (address)) store church-current-item church-comparestrue) church-comparesfalse) ((church-force (cons 'a2162 . (address)) store church-list) (cons 'a2163 . (address)) store church-comparestrue ((church-force (cons 'a2164 . (address)) store church-pair) (cons 'a2165 . (address)) store church-current-item church-comparesfalse))))) (cons 'a2166 . (address)) store ((church-force (cons 'a2167 . (address)) store church-first) (cons 'a2168 . (address)) store church-lst)))) (cons 'a2169 . (address)) store ((church-force (cons 'a2170 . (address)) store church-second) (cons 'a2171 . (address)) store church-comparestrue+comparesfalse)))) (cons 'a2172 . (address)) store ((church-force (cons 'a2173 . (address)) store church-first) (cons 'a2174 . (address)) store church-comparestrue+comparesfalse)))) (cons 'a2175 . (address)) store ((church-force (cons 'a2176 . (address)) store church-my-partition) (cons 'a2177 . (address)) store church-compare church-pivot ((church-force (cons 'a2178 . (address)) store church-rest) (cons 'a2179 . (address)) store church-lst)))))) (church-combine-size-score (lambda (address store church-sizes church-scores church-size-weight church-score-weight) ((church-force (cons 'a2180 . (address)) store church-map) (cons 'a2181 . (address)) store church-+ ((church-force (cons 'a2182 . (address)) store church-map) (cons 'a2183 . (address)) store (lambda (address store church-x) ((church-force (cons 'a2184 . (address)) store church-*) (cons 'a2185 . (address)) store church-x church-size-weight)) church-sizes) ((church-force (cons 'a2186 . (address)) store church-map) (cons 'a2187 . (address)) store (lambda (address store church-x) ((church-force (cons 'a2188 . (address)) store church-*) (cons 'a2189 . (address)) store church-x ((church-force (cons 'a2190 . (address)) store church--) (cons 'a2191 . (address)) store church-score-weight))) church-scores)))) (church-compose (lambda (address store church-f church-g) (lambda (address store church-x) ((church-force (cons 'a2192 . (address)) store church-f) (cons 'a2193 . (address)) store ((church-force (cons 'a2194 . (address)) store church-g) (cons 'a2195 . (address)) store church-x))))) (church-scoring (lambda (address store church-prog church-data church-popsize) ((church-force (cons 'a2196 . (address)) store (lambda (address store church-samples) ((church-force (cons 'a2197 . (address)) store (lambda (address store church-samples) ((church-force (cons 'a2198 . (address)) store (lambda (address store church-scores) ((church-force (cons 'a2199 . (address)) store (lambda (address store church-score) church-score)) (cons 'a2200 . (address)) store (if (church-force (cons 'a2201 . (address)) store ((church-force (cons 'a2202 . (address)) store church-null?) (cons 'a2203 . (address)) store church-scores)) -inf.0 ((church-force (cons 'a2204 . (address)) store church-apply) (cons 'a2205 . (address)) store church-log-sum-exp church-scores))))) (cons 'a2206 . (address)) store ((church-force (cons 'a2207 . (address)) store church-map) (cons 'a2208 . (address)) store church-mcmc-state->score church-samples)))) (cons 'a2209 . (address)) store ((church-force (cons 'a2210 . (address)) store church-fold) (cons 'a2211 . (address)) store (lambda (address store church-s church-a) (if (church-force (cons 'a2212 . (address)) store ((church-force (cons 'a2213 . (address)) store church-member) (cons 'a2214 . (address)) store ((church-force (cons 'a2215 . (address)) store church-mcmc-state->addrval) (cons 'a2216 . (address)) store church-s) ((church-force (cons 'a2217 . (address)) store church-map) (cons 'a2218 . (address)) store church-mcmc-state->addrval church-a))) church-a ((church-force (cons 'a2219 . (address)) store church-pair) (cons 'a2220 . (address)) store church-s church-a))) '() church-samples)))) (cons 'a2221 . (address)) store ((church-force (cons 'a2222 . (address)) store church-smc-core) (cons 'a2223 . (address)) store ((church-force (cons 'a2224 . (address)) store church-map) (cons 'a2225 . (address)) store church-list ((church-force (cons 'a2226 . (address)) store church-iota) (cons 'a2227 . (address)) store ((church-force (cons 'a2228 . (address)) store church-+) (cons 'a2229 . (address)) store 1 ((church-force (cons 'a2230 . (address)) store church-lazy-list-size) (cons 'a2231 . (address)) store church-data)))) church-popsize 0 (lambda (address store church-depth) (lambda (address store) ((church-force (cons 'a2232 . (address)) store (lambda (address store church-s) ((church-force (cons 'a2233 . (address)) store church-pair) (cons 'a2234 . (address)) store ((church-force (cons 'a2235 . (address)) store church-lazy-equal?) (cons 'a2236 . (address)) store church-s church-data church-depth) (lambda (address store) ((church-force (cons 'a2237 . (address)) store church-first) (cons 'a2238 . (address)) store ((church-force (cons 'a2239 . (address)) store church-lazy-list->list) (cons 'a2240 . (address)) store church-s church-depth)))))) (cons 'a2241 . (address)) store ((church-force (cons 'a2242 . (address)) store church-eval) (cons 'a2243 . (address)) store church-prog)))))))) (church-samples 150) (church-lag 20) (church-runs 5) (church-error-tolerance 7e-2) (church-crp-param 0.5) (church-dirichlet-param 1e-2) (church-CRP-param 1.0)) (begin (church-force (cons 'a2244 . (address)) store ((church-force (cons 'a2245 . (address)) store church-equal?-test) (cons 'a2246 . (address)) store "deterministic test: begin-define" (letrec ((church-a 10)) church-a) 10)) (church-force (cons 'a2247 . (address)) store ((church-force (cons 'a2248 . (address)) store church-equal?-test) (cons 'a2249 . (address)) store "deterministic test: begin-define 2" (letrec ((church-foo (lambda (address store church-x . church-y) church-y))) ((church-force (cons 'a2250 . (address)) store church-foo) (cons 'a2251 . (address)) store 1 2 3 4)) '(2 3 4))) (church-force (cons 'a2252 . (address)) store ((church-force (cons 'a2253 . (address)) store church-equal?-test) (cons 'a2254 . (address)) store "deterministic test: begin-define 3" (letrec ((church-a 10) (church-b 12)) (begin (church-force (cons 'a2255 . (address)) store church-a) ((church-force (cons 'a2256 . (address)) store church-+) (cons 'a2257 . (address)) store church-a church-b))) 22)) (church-force (cons 'a2258 . (address)) store ((church-force (cons 'a2259 . (address)) store church-equal?-test) (cons 'a2260 . (address)) store "deterministic test: let-desugar" ((church-force (cons 'a2261 . (address)) store (lambda (address store church-a church-b) (begin (church-force (cons 'a2262 . (address)) store 'x) ((church-force (cons 'a2263 . (address)) store (lambda (address store church-b church-a) (begin (church-force (cons 'a2264 . (address)) store 'y) ((church-force (cons 'a2265 . (address)) store church-list) (cons 'a2266 . (address)) store church-a church-b)))) (cons 'a2267 . (address)) store church-a church-b)))) (cons 'a2268 . (address)) store 1 2) '(2 1))) (church-force (cons 'a2269 . (address)) store ((church-force (cons 'a2270 . (address)) store church-equal?-test) (cons 'a2271 . (address)) store "deterministic test: named-let-desugar" (letrec ((church-loop (lambda (address store church-n) (if (church-force (cons 'a2272 . (address)) store ((church-force (cons 'a2273 . (address)) store church-<=) (cons 'a2274 . (address)) store church-n 1)) 1 ((church-force (cons 'a2275 . (address)) store church-+) (cons 'a2276 . (address)) store ((church-force (cons 'a2277 . (address)) store church-loop) (cons 'a2278 . (address)) store ((church-force (cons 'a2279 . (address)) store church--) (cons 'a2280 . (address)) store church-n 2)) ((church-force (cons 'a2281 . (address)) store church-loop) (cons 'a2282 . (address)) store ((church-force (cons 'a2283 . (address)) store church--) (cons 'a2284 . (address)) store church-n 1))))))) ((church-force (cons 'a2285 . (address)) store church-loop) (cons 'a2286 . (address)) store 4)) 5)) (church-force (cons 'a2287 . (address)) store ((church-force (cons 'a2288 . (address)) store church-equal?-test) (cons 'a2289 . (address)) store "deterministic test: let*-desugar" ((church-force (cons 'a2290 . (address)) store (lambda (address store church-a church-b) (begin (church-force (cons 'a2291 . (address)) store 'x) ((church-force (cons 'a2292 . (address)) store (lambda (address store church-b) ((church-force (cons 'a2293 . (address)) store (lambda (address store church-a) (begin (church-force (cons 'a2294 . (address)) store 'y) ((church-force (cons 'a2295 . (address)) store church-list) (cons 'a2296 . (address)) store church-a church-b)))) (cons 'a2297 . (address)) store church-b))) (cons 'a2298 . (address)) store church-a)))) (cons 'a2299 . (address)) store 1 2) '(1 1))) (church-force (cons 'a2300 . (address)) store ((church-force (cons 'a2301 . (address)) store church-equal?-test) (cons 'a2302 . (address)) store "deterministic test: case-desugar" ((church-force (cons 'a2303 . (address)) store (lambda (address store church-g0) (if (church-force (cons 'a2304 . (address)) store ((church-force (cons 'a2305 . (address)) store church-any) (cons 'a2306 . (address)) store ((church-force (cons 'a2307 . (address)) store church-list) (cons 'a2308 . (address)) store ((church-force (cons 'a2309 . (address)) store church-equal?) (cons 'a2310 . (address)) store church-g0 7) ((church-force (cons 'a2311 . (address)) store church-equal?) (cons 'a2312 . (address)) store church-g0 9) ((church-force (cons 'a2313 . (address)) store church-equal?) (cons 'a2314 . (address)) store church-g0 11)))) (begin (church-force (cons 'a2315 . (address)) store 'x) 'odd) (if (church-force (cons 'a2316 . (address)) store ((church-force (cons 'a2317 . (address)) store church-any) (cons 'a2318 . (address)) store ((church-force (cons 'a2319 . (address)) store church-list) (cons 'a2320 . (address)) store ((church-force (cons 'a2321 . (address)) store church-equal?) (cons 'a2322 . (address)) store church-g0 6) ((church-force (cons 'a2323 . (address)) store church-equal?) (cons 'a2324 . (address)) store church-g0 8)))) (begin (church-force (cons 'a2325 . (address)) store 'y) 'even) (begin (church-force (cons 'a2326 . (address)) store 'z) 'nothing))))) (cons 'a2327 . (address)) store ((church-force (cons 'a2328 . (address)) store church-+) (cons 'a2329 . (address)) store 7 1)) 'even)) (church-force (cons 'a2330 . (address)) store ((church-force (cons 'a2331 . (address)) store church-equal?-test) (cons 'a2332 . (address)) store "deterministic test: cond-desugar" (if (church-force (cons 'a2333 . (address)) store ((church-force (cons 'a2334 . (address)) store church-<) (cons 'a2335 . (address)) store 2 1)) (begin (church-force (cons 'a2336 . (address)) store 'x) 'a) (if (church-force (cons 'a2337 . (address)) store ((church-force (cons 'a2338 . (address)) store church-<) (cons 'a2339 . (address)) store 1 1)) (begin (church-force (cons 'a2340 . (address)) store 'y) 'b) (begin (church-force (cons 'a2341 . (address)) store 'z) 'c))) 'c)) (church-force (cons 'a2342 . (address)) store ((church-force (cons 'a2343 . (address)) store church-equal?-test) (cons 'a2344 . (address)) store "deterministic test: cond-desugar" (if (church-force (cons 'a2345 . (address)) store ((church-force (cons 'a2346 . (address)) store church-<) (cons 'a2347 . (address)) store 2 1)) (begin (church-force (cons 'a2348 . (address)) store 'x) 'a) (if (church-force (cons 'a2349 . (address)) store ((church-force (cons 'a2350 . (address)) store church-<=) (cons 'a2351 . (address)) store 1 1)) (begin (church-force (cons 'a2352 . (address)) store 'y) 'b) (begin (church-force (cons 'a2353 . (address)) store 'z) 'c))) 'b)) (church-force (cons 'a2354 . (address)) store ((church-force (cons 'a2355 . (address)) store church-equal?-test) (cons 'a2356 . (address)) store "deterministic test: map" ((church-force (cons 'a2357 . (address)) store church-map) (cons 'a2358 . (address)) store (lambda (address store church-x) ((church-force (cons 'a2359 . (address)) store church-list) (cons 'a2360 . (address)) store church-x church-x)) ((church-force (cons 'a2361 . (address)) store church-list) (cons 'a2362 . (address)) store 1 2 3)) '((1 1) (2 2) (3 3)))) (church-force (cons 'a2363 . (address)) store ((church-force (cons 'a2364 . (address)) store church-check-test) (cons 'a2365 . (address)) store ((church-force (cons 'a2366 . (address)) store church-repeat) (cons 'a2367 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2368 . (address)) store church-repeat) (cons 'a2369 . (address)) store church-samples (lambda (address store) ((church-force (cons 'a2370 . (address)) store church-flip) (cons 'a2371 . (address)) store 0.7))))) (lambda (address store church-x) (if (church-force (cons 'a2372 . (address)) store church-x) 1 0)) 0.7 church-error-tolerance "random, no query")) (church-force (cons 'a2373 . (address)) store ((church-force (cons 'a2374 . (address)) store church-check-test) (cons 'a2375 . (address)) store ((church-force (cons 'a2376 . (address)) store church-repeat) (cons 'a2377 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2378 . (address)) store church-mh-query) (cons 'a2379 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a ((church-force (cons 'a2380 . (address)) store church-/) (cons 'a2381 . (address)) store 1 1000))) ((church-force (cons 'a2382 . (address)) store church-pair) (cons 'a2383 . (address)) store ((church-force (cons 'a2384 . (address)) store church-flip) (cons 'a2385 . (address)) store church-a) (lambda (address store) church-a))))))) (lambda (address store church-b) church-b) ((church-force (cons 'a2386 . (address)) store church-/) (cons 'a2387 . (address)) store 1 1000) 0.0 "setting a flip")) (church-force (cons 'a2388 . (address)) store ((church-force (cons 'a2389 . (address)) store church-check-test) (cons 'a2390 . (address)) store ((church-force (cons 'a2391 . (address)) store church-repeat) (cons 'a2392 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2393 . (address)) store church-mh-query) (cons 'a2394 . (address)) store church-samples church-lag (lambda (address store) (begin ((church-force (cons 'a2395 . (address)) store church-pair) (cons 'a2396 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2397 . (address)) store church-flip) (cons 'a2398 . (address)) store 0.7)))))))) (lambda (address store church-x) (if (church-force (cons 'a2399 . (address)) store church-x) 1 0)) 0.7 church-error-tolerance "unconditioned flip.")) (church-force (cons 'a2400 . (address)) store ((church-force (cons 'a2401 . (address)) store church-check-test) (cons 'a2402 . (address)) store ((church-force (cons 'a2403 . (address)) store church-repeat) (cons 'a2404 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2405 . (address)) store church-mh-query) (cons 'a2406 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a ((church-force (cons 'a2407 . (address)) store church-flip) (cons 'a2408 . (address)) store)) (church-b ((church-force (cons 'a2409 . (address)) store church-flip) (cons 'a2410 . (address)) store))) ((church-force (cons 'a2411 . (address)) store church-pair) (cons 'a2412 . (address)) store ((church-force (cons 'a2413 . (address)) store church-or) (cons 'a2414 . (address)) store church-a church-b) (lambda (address store) ((church-force (cons 'a2415 . (address)) store church-and) (cons 'a2416 . (address)) store church-a church-b)))))))) (lambda (address store church-x) (if (church-force (cons 'a2417 . (address)) store church-x) 1 0)) ((church-force (cons 'a2418 . (address)) store church-/) (cons 'a2419 . (address)) store 1 3) church-error-tolerance "and conditioned on or.")) (church-force (cons 'a2420 . (address)) store ((church-force (cons 'a2421 . (address)) store church-check-test) (cons 'a2422 . (address)) store ((church-force (cons 'a2423 . (address)) store church-repeat) (cons 'a2424 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2425 . (address)) store church-mh-query) (cons 'a2426 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a ((church-force (cons 'a2427 . (address)) store church-flip) (cons 'a2428 . (address)) store 0.3)) (church-b ((church-force (cons 'a2429 . (address)) store church-flip) (cons 'a2430 . (address)) store 0.3))) ((church-force (cons 'a2431 . (address)) store church-pair) (cons 'a2432 . (address)) store ((church-force (cons 'a2433 . (address)) store church-or) (cons 'a2434 . (address)) store church-a church-b) (lambda (address store) ((church-force (cons 'a2435 . (address)) store church-and) (cons 'a2436 . (address)) store church-a church-b)))))))) (lambda (address store church-x) (if (church-force (cons 'a2437 . (address)) store church-x) 1 0)) ((church-force (cons 'a2438 . (address)) store church-/) (cons 'a2439 . (address)) store ((church-force (cons 'a2440 . (address)) store church-*) (cons 'a2441 . (address)) store 0.3 0.3) ((church-force (cons 'a2442 . (address)) store church-+) (cons 'a2443 . (address)) store ((church-force (cons 'a2444 . (address)) store church-*) (cons 'a2445 . (address)) store 0.3 0.3) ((church-force (cons 'a2446 . (address)) store church-*) (cons 'a2447 . (address)) store 0.7 0.3) ((church-force (cons 'a2448 . (address)) store church-*) (cons 'a2449 . (address)) store 0.3 0.7))) church-error-tolerance "and conditioned on or, biased flip.")) (church-force (cons 'a2450 . (address)) store ((church-force (cons 'a2451 . (address)) store church-check-test) (cons 'a2452 . (address)) store ((church-force (cons 'a2453 . (address)) store church-repeat) (cons 'a2454 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2455 . (address)) store church-mh-query) (cons 'a2456 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-bit-flip (lambda (address store church-fidelity church-x) ((church-force (cons 'a2457 . (address)) store church-flip) (cons 'a2458 . (address)) store (if (church-force (cons 'a2459 . (address)) store church-x) church-fidelity ((church-force (cons 'a2460 . (address)) store church--) (cons 'a2461 . (address)) store 1 church-fidelity))))) (church-hyp ((church-force (cons 'a2462 . (address)) store church-flip) (cons 'a2463 . (address)) store 0.7))) ((church-force (cons 'a2464 . (address)) store church-pair) (cons 'a2465 . (address)) store ((church-force (cons 'a2466 . (address)) store church-bit-flip) (cons 'a2467 . (address)) store 0.8 church-hyp) (lambda (address store) church-hyp))))))) (lambda (address store church-x) (if (church-force (cons 'a2468 . (address)) store church-x) 1 0)) ((church-force (cons 'a2469 . (address)) store church-/) (cons 'a2470 . (address)) store ((church-force (cons 'a2471 . (address)) store church-*) (cons 'a2472 . (address)) store 0.7 0.8) ((church-force (cons 'a2473 . (address)) store church-+) (cons 'a2474 . (address)) store ((church-force (cons 'a2475 . (address)) store church-*) (cons 'a2476 . (address)) store 0.7 0.8) ((church-force (cons 'a2477 . (address)) store church-*) (cons 'a2478 . (address)) store 0.3 0.2))) church-error-tolerance "conditioned flip.")) (church-force (cons 'a2479 . (address)) store ((church-force (cons 'a2480 . (address)) store church-check-test) (cons 'a2481 . (address)) store ((church-force (cons 'a2482 . (address)) store church-repeat) (cons 'a2483 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2484 . (address)) store church-mh-query) (cons 'a2485 . (address)) store church-samples church-lag (lambda (address store) (begin ((church-force (cons 'a2486 . (address)) store church-pair) (cons 'a2487 . (address)) store church-true (lambda (address store) (if (church-force (cons 'a2488 . (address)) store ((church-force (cons 'a2489 . (address)) store church-flip) (cons 'a2490 . (address)) store 0.7)) ((church-force (cons 'a2491 . (address)) store church-flip) (cons 'a2492 . (address)) store 0.2) ((church-force (cons 'a2493 . (address)) store church-flip) (cons 'a2494 . (address)) store 0.8))))))))) (lambda (address store church-x) (if (church-force (cons 'a2495 . (address)) store church-x) 1 0)) ((church-force (cons 'a2496 . (address)) store church-+) (cons 'a2497 . (address)) store ((church-force (cons 'a2498 . (address)) store church-*) (cons 'a2499 . (address)) store 0.7 0.2) ((church-force (cons 'a2500 . (address)) store church-*) (cons 'a2501 . (address)) store 0.3 0.8)) church-error-tolerance "random 'if' with random branches, unconditioned.")) (church-force (cons 'a2502 . (address)) store ((church-force (cons 'a2503 . (address)) store church-check-test) (cons 'a2504 . (address)) store ((church-force (cons 'a2505 . (address)) store church-repeat) (cons 'a2506 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2507 . (address)) store church-mh-query) (cons 'a2508 . (address)) store church-samples church-lag (lambda (address store) (begin ((church-force (cons 'a2509 . (address)) store church-pair) (cons 'a2510 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2511 . (address)) store church-flip) (cons 'a2512 . (address)) store (if (church-force (cons 'a2513 . (address)) store ((church-force (cons 'a2514 . (address)) store church-flip) (cons 'a2515 . (address)) store 0.7)) 0.2 0.8))))))))) (lambda (address store church-x) (if (church-force (cons 'a2516 . (address)) store church-x) 1 0)) ((church-force (cons 'a2517 . (address)) store church-+) (cons 'a2518 . (address)) store ((church-force (cons 'a2519 . (address)) store church-*) (cons 'a2520 . (address)) store 0.7 0.2) ((church-force (cons 'a2521 . (address)) store church-*) (cons 'a2522 . (address)) store 0.3 0.8)) church-error-tolerance "flip with random weight, unconditioned.")) (church-force (cons 'a2523 . (address)) store ((church-force (cons 'a2524 . (address)) store church-check-test) (cons 'a2525 . (address)) store ((church-force (cons 'a2526 . (address)) store church-repeat) (cons 'a2527 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2528 . (address)) store church-mh-query) (cons 'a2529 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc (if (church-force (cons 'a2530 . (address)) store ((church-force (cons 'a2531 . (address)) store church-flip) (cons 'a2532 . (address)) store 0.7)) (lambda (address store church-x) ((church-force (cons 'a2533 . (address)) store church-flip) (cons 'a2534 . (address)) store 0.2)) (lambda (address store church-x) ((church-force (cons 'a2535 . (address)) store church-flip) (cons 'a2536 . (address)) store 0.8))))) ((church-force (cons 'a2537 . (address)) store church-pair) (cons 'a2538 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2539 . (address)) store church-proc) (cons 'a2540 . (address)) store 1)))))))) (lambda (address store church-x) (if (church-force (cons 'a2541 . (address)) store church-x) 1 0)) ((church-force (cons 'a2542 . (address)) store church-+) (cons 'a2543 . (address)) store ((church-force (cons 'a2544 . (address)) store church-*) (cons 'a2545 . (address)) store 0.7 0.2) ((church-force (cons 'a2546 . (address)) store church-*) (cons 'a2547 . (address)) store 0.3 0.8)) church-error-tolerance "random procedure application, unconditioned.")) (church-force (cons 'a2548 . (address)) store ((church-force (cons 'a2549 . (address)) store church-check-test) (cons 'a2550 . (address)) store ((church-force (cons 'a2551 . (address)) store church-repeat) (cons 'a2552 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2553 . (address)) store church-mh-query) (cons 'a2554 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-hyp ((church-force (cons 'a2555 . (address)) store church-multinomial) (cons 'a2556 . (address)) store ((church-force (cons 'a2557 . (address)) store church-list) (cons 'a2558 . (address)) store 'b 'c 'd) ((church-force (cons 'a2559 . (address)) store church-list) (cons 'a2560 . (address)) store 0.1 0.6 0.3))) (church-observe (lambda (address store church-x) (if (church-force (cons 'a2561 . (address)) store ((church-force (cons 'a2562 . (address)) store church-flip) (cons 'a2563 . (address)) store 0.8)) church-x 'b)))) ((church-force (cons 'a2564 . (address)) store church-pair) (cons 'a2565 . (address)) store ((church-force (cons 'a2566 . (address)) store church-eq?) (cons 'a2567 . (address)) store ((church-force (cons 'a2568 . (address)) store church-observe) (cons 'a2569 . (address)) store church-hyp) 'b) (lambda (address store) ((church-force (cons 'a2570 . (address)) store church-eq?) (cons 'a2571 . (address)) store church-hyp 'b)))))))) (lambda (address store church-x) (if (church-force (cons 'a2572 . (address)) store church-x) 1 0)) 0.357 church-error-tolerance "conditioned multinomial.")) (church-force (cons 'a2573 . (address)) store ((church-force (cons 'a2574 . (address)) store church-check-test) (cons 'a2575 . (address)) store ((church-force (cons 'a2576 . (address)) store church-repeat) (cons 'a2577 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2578 . (address)) store church-mh-query) (cons 'a2579 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-power-law (lambda (address store church-prob church-x) (if (church-force (cons 'a2580 . (address)) store ((church-force (cons 'a2581 . (address)) store church-flip) (cons 'a2582 . (address)) store church-prob)) church-x ((church-force (cons 'a2583 . (address)) store church-power-law) (cons 'a2584 . (address)) store church-prob ((church-force (cons 'a2585 . (address)) store church-+) (cons 'a2586 . (address)) store church-x 1))))) (church-a ((church-force (cons 'a2587 . (address)) store church-power-law) (cons 'a2588 . (address)) store 0.3 1))) ((church-force (cons 'a2589 . (address)) store church-pair) (cons 'a2590 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2591 . (address)) store church-<) (cons 'a2592 . (address)) store church-a 5)))))))) (lambda (address store church-x) (if (church-force (cons 'a2593 . (address)) store church-x) 1 0)) ((church-force (cons 'a2594 . (address)) store church-apply) (cons 'a2595 . (address)) store church-+ ((church-force (cons 'a2596 . (address)) store (lambda (address store church-prob) ((church-force (cons 'a2597 . (address)) store church-map) (cons 'a2598 . (address)) store (lambda (address store church-x) ((church-force (cons 'a2599 . (address)) store church-*) (cons 'a2600 . (address)) store ((church-force (cons 'a2601 . (address)) store church-expt) (cons 'a2602 . (address)) store ((church-force (cons 'a2603 . (address)) store church--) (cons 'a2604 . (address)) store 1 church-prob) ((church-force (cons 'a2605 . (address)) store church--) (cons 'a2606 . (address)) store church-x 1)) church-prob)) ((church-force (cons 'a2607 . (address)) store church-list) (cons 'a2608 . (address)) store 1 2 3 4)))) (cons 'a2609 . (address)) store 0.3)) church-error-tolerance "recursive stochastic fn using define, unconditioned.")) (church-force (cons 'a2610 . (address)) store ((church-force (cons 'a2611 . (address)) store church-check-test) (cons 'a2612 . (address)) store ((church-force (cons 'a2613 . (address)) store church-repeat) (cons 'a2614 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2615 . (address)) store church-mh-query) (cons 'a2616 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2617 . (address)) store church-flip) (cons 'a2618 . (address)) store 0.8))))) ((church-force (cons 'a2619 . (address)) store church-pair) (cons 'a2620 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2621 . (address)) store church-and) (cons 'a2622 . (address)) store ((church-force (cons 'a2623 . (address)) store church-proc) (cons 'a2624 . (address)) store 1) ((church-force (cons 'a2625 . (address)) store church-proc) (cons 'a2626 . (address)) store 2) ((church-force (cons 'a2627 . (address)) store church-proc) (cons 'a2628 . (address)) store 1) ((church-force (cons 'a2629 . (address)) store church-proc) (cons 'a2630 . (address)) store 2))))))))) (lambda (address store church-x) (if (church-force (cons 'a2631 . (address)) store church-x) 1 0)) 0.64 church-error-tolerance "memoized flip, unconditioned.")) (church-force (cons 'a2632 . (address)) store ((church-force (cons 'a2633 . (address)) store church-check-test) (cons 'a2634 . (address)) store ((church-force (cons 'a2635 . (address)) store church-repeat) (cons 'a2636 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2637 . (address)) store church-mh-query) (cons 'a2638 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2639 . (address)) store church-flip) (cons 'a2640 . (address)) store 0.2))))) ((church-force (cons 'a2641 . (address)) store church-pair) (cons 'a2642 . (address)) store ((church-force (cons 'a2643 . (address)) store church-or) (cons 'a2644 . (address)) store ((church-force (cons 'a2645 . (address)) store church-proc) (cons 'a2646 . (address)) store 1) ((church-force (cons 'a2647 . (address)) store church-proc) (cons 'a2648 . (address)) store 2) ((church-force (cons 'a2649 . (address)) store church-proc) (cons 'a2650 . (address)) store 2) ((church-force (cons 'a2651 . (address)) store church-proc) (cons 'a2652 . (address)) store 2)) (lambda (address store) ((church-force (cons 'a2653 . (address)) store church-proc) (cons 'a2654 . (address)) store 1)))))))) (lambda (address store church-x) (if (church-force (cons 'a2655 . (address)) store church-x) 1 0)) ((church-force (cons 'a2656 . (address)) store church-/) (cons 'a2657 . (address)) store ((church-force (cons 'a2658 . (address)) store church-+) (cons 'a2659 . (address)) store ((church-force (cons 'a2660 . (address)) store church-*) (cons 'a2661 . (address)) store 0.2 0.2) ((church-force (cons 'a2662 . (address)) store church-*) (cons 'a2663 . (address)) store 0.2 0.8)) ((church-force (cons 'a2664 . (address)) store church-+) (cons 'a2665 . (address)) store ((church-force (cons 'a2666 . (address)) store church-*) (cons 'a2667 . (address)) store 0.2 0.2) ((church-force (cons 'a2668 . (address)) store church-*) (cons 'a2669 . (address)) store 0.2 0.8) ((church-force (cons 'a2670 . (address)) store church-*) (cons 'a2671 . (address)) store 0.8 0.2))) church-error-tolerance "memoized flip, conditioned.")) (church-force (cons 'a2672 . (address)) store ((church-force (cons 'a2673 . (address)) store church-check-test) (cons 'a2674 . (address)) store ((church-force (cons 'a2675 . (address)) store church-repeat) (cons 'a2676 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2677 . (address)) store church-mh-query) (cons 'a2678 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a ((church-force (cons 'a2679 . (address)) store church-flip) (cons 'a2680 . (address)) store 0.8)) (church-proc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) church-a)))) ((church-force (cons 'a2681 . (address)) store church-pair) (cons 'a2682 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2683 . (address)) store church-and) (cons 'a2684 . (address)) store ((church-force (cons 'a2685 . (address)) store church-proc) (cons 'a2686 . (address)) store 1) ((church-force (cons 'a2687 . (address)) store church-proc) (cons 'a2688 . (address)) store 1))))))))) (lambda (address store church-x) (if (church-force (cons 'a2689 . (address)) store church-x) 1 0)) 0.8 church-error-tolerance "bound symbol used inside memoizer, unconditioned.")) (church-force (cons 'a2690 . (address)) store ((church-force (cons 'a2691 . (address)) store church-check-test) (cons 'a2692 . (address)) store ((church-force (cons 'a2693 . (address)) store church-repeat) (cons 'a2694 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2695 . (address)) store church-mh-query) (cons 'a2696 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2697 . (address)) store church-flip) (cons 'a2698 . (address)) store 0.8))))) ((church-force (cons 'a2699 . (address)) store church-pair) (cons 'a2700 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2701 . (address)) store church-and) (cons 'a2702 . (address)) store ((church-force (cons 'a2703 . (address)) store church-proc) (cons 'a2704 . (address)) store ((church-force (cons 'a2705 . (address)) store church-uniform-draw) (cons 'a2706 . (address)) store ((church-force (cons 'a2707 . (address)) store church-list) (cons 'a2708 . (address)) store 1 2 3))) ((church-force (cons 'a2709 . (address)) store church-proc) (cons 'a2710 . (address)) store ((church-force (cons 'a2711 . (address)) store church-uniform-draw) (cons 'a2712 . (address)) store ((church-force (cons 'a2713 . (address)) store church-list) (cons 'a2714 . (address)) store 1 2 3))))))))))) (lambda (address store church-x) (if (church-force (cons 'a2715 . (address)) store church-x) 1 0)) ((church-force (cons 'a2716 . (address)) store church-+) (cons 'a2717 . (address)) store ((church-force (cons 'a2718 . (address)) store church-*) (cons 'a2719 . (address)) store ((church-force (cons 'a2720 . (address)) store church-/) (cons 'a2721 . (address)) store 1 3) 0.8) ((church-force (cons 'a2722 . (address)) store church-*) (cons 'a2723 . (address)) store ((church-force (cons 'a2724 . (address)) store church-/) (cons 'a2725 . (address)) store 2 3) ((church-force (cons 'a2726 . (address)) store church-*) (cons 'a2727 . (address)) store 0.8 0.8))) church-error-tolerance "memoized flip with random argument, unconditioned.")) (church-force (cons 'a2728 . (address)) store ((church-force (cons 'a2729 . (address)) store church-check-test) (cons 'a2730 . (address)) store ((church-force (cons 'a2731 . (address)) store church-repeat) (cons 'a2732 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2733 . (address)) store church-mh-query) (cons 'a2734 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-proc (if (church-force (cons 'a2735 . (address)) store ((church-force (cons 'a2736 . (address)) store church-flip) (cons 'a2737 . (address)) store 0.7)) (lambda (address store church-x) ((church-force (cons 'a2738 . (address)) store church-flip) (cons 'a2739 . (address)) store 0.2)) (lambda (address store church-x) ((church-force (cons 'a2740 . (address)) store church-flip) (cons 'a2741 . (address)) store 0.8)))) (church-memproc ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store church-proc))) ((church-force (cons 'a2742 . (address)) store church-pair) (cons 'a2743 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2744 . (address)) store church-and) (cons 'a2745 . (address)) store ((church-force (cons 'a2746 . (address)) store church-memproc) (cons 'a2747 . (address)) store 1) ((church-force (cons 'a2748 . (address)) store church-memproc) (cons 'a2749 . (address)) store 2))))))))) (lambda (address store church-x) (if (church-force (cons 'a2750 . (address)) store church-x) 1 0)) ((church-force (cons 'a2751 . (address)) store church-+) (cons 'a2752 . (address)) store ((church-force (cons 'a2753 . (address)) store church-*) (cons 'a2754 . (address)) store 0.7 0.2 0.2) ((church-force (cons 'a2755 . (address)) store church-*) (cons 'a2756 . (address)) store 0.3 0.8 0.8)) church-error-tolerance "memoized random procedure, unconditioned.")) (church-force (cons 'a2757 . (address)) store ((church-force (cons 'a2758 . (address)) store church-check-test) (cons 'a2759 . (address)) store ((church-force (cons 'a2760 . (address)) store church-repeat) (cons 'a2761 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2762 . (address)) store church-mh-query) (cons 'a2763 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-bit-flip (lambda (address store church-fidelity church-x) ((church-force (cons 'a2764 . (address)) store church-flip) (cons 'a2765 . (address)) store (if (church-force (cons 'a2766 . (address)) store church-x) church-fidelity ((church-force (cons 'a2767 . (address)) store church--) (cons 'a2768 . (address)) store 1 church-fidelity)))))) ((church-force (cons 'a2769 . (address)) store church-pair) (cons 'a2770 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2771 . (address)) store church-rejection-query) (cons 'a2772 . (address)) store (lambda (address store) (letrec ((church-a ((church-force (cons 'a2773 . (address)) store church-flip) (cons 'a2774 . (address)) store 0.7))) ((church-force (cons 'a2775 . (address)) store church-pair) (cons 'a2776 . (address)) store ((church-force (cons 'a2777 . (address)) store church-bit-flip) (cons 'a2778 . (address)) store 0.8 church-a) (lambda (address store) church-a)))))))))))) (lambda (address store church-x) (if (church-force (cons 'a2779 . (address)) store church-x) 1 0)) ((church-force (cons 'a2780 . (address)) store church-/) (cons 'a2781 . (address)) store ((church-force (cons 'a2782 . (address)) store church-*) (cons 'a2783 . (address)) store 0.7 0.8) ((church-force (cons 'a2784 . (address)) store church-+) (cons 'a2785 . (address)) store ((church-force (cons 'a2786 . (address)) store church-*) (cons 'a2787 . (address)) store 0.7 0.8) ((church-force (cons 'a2788 . (address)) store church-*) (cons 'a2789 . (address)) store 0.3 0.2))) church-error-tolerance "mh-query over rejection query for conditioned flip.")) (church-force (cons 'a2790 . (address)) store ((church-force (cons 'a2791 . (address)) store church-check-test) (cons 'a2792 . (address)) store ((church-force (cons 'a2793 . (address)) store church-repeat) (cons 'a2794 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2795 . (address)) store church-mh-query) (cons 'a2796 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a (if (church-force (cons 'a2797 . (address)) store ((church-force (cons 'a2798 . (address)) store church-flip) (cons 'a2799 . (address)) store 0.9)) ((church-force (cons 'a2800 . (address)) store church-first) (cons 'a2801 . (address)) store ((church-force (cons 'a2802 . (address)) store church-beta) (cons 'a2803 . (address)) store 1 5)) 0.7)) (church-b ((church-force (cons 'a2804 . (address)) store church-flip) (cons 'a2805 . (address)) store church-a))) ((church-force (cons 'a2806 . (address)) store church-pair) (cons 'a2807 . (address)) store church-b (lambda (address store) church-a))))))) (lambda (address store church-x) church-x) 0.417 church-error-tolerance "trans-dimensional.")) (church-force (cons 'a2808 . (address)) store ((church-force (cons 'a2809 . (address)) store church-check-test) (cons 'a2810 . (address)) store ((church-force (cons 'a2811 . (address)) store church-repeat) (cons 'a2812 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2813 . (address)) store church-mh-query) (cons 'a2814 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-a (if (church-force (cons 'a2815 . (address)) store ((church-force (cons 'a2816 . (address)) store church-flip) (cons 'a2817 . (address)) store)) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store church-flip) ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store church-flip))) (church-b ((church-force (cons 'a2818 . (address)) store church-a) (cons 'a2819 . (address)) store))) ((church-force (cons 'a2820 . (address)) store church-pair) (cons 'a2821 . (address)) store church-true (lambda (address store) church-b))))))) (lambda (address store church-x) (if (church-force (cons 'a2822 . (address)) store church-x) 1 0)) 0.5 church-error-tolerance "memoized flip in if branch (create/destroy memprocs), unconditioned.")) (church-force (cons 'a2823 . (address)) store ((church-force (cons 'a2824 . (address)) store church-check-test) (cons 'a2825 . (address)) store ((church-force (cons 'a2826 . (address)) store church-repeat) (cons 'a2827 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2828 . (address)) store church-mh-query) (cons 'a2829 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-bb ((church-force (cons 'a2830 . (address)) store church-make-dirichlet-discrete) (cons 'a2831 . (address)) store ((church-force (cons 'a2832 . (address)) store church-list) (cons 'a2833 . (address)) store 0.5 0.5 0.5)))) ((church-force (cons 'a2834 . (address)) store church-pair) (cons 'a2835 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2836 . (address)) store church-=) (cons 'a2837 . (address)) store ((church-force (cons 'a2838 . (address)) store church-bb) (cons 'a2839 . (address)) store) ((church-force (cons 'a2840 . (address)) store church-bb) (cons 'a2841 . (address)) store))))))))) (lambda (address store church-b) (if (church-force (cons 'a2842 . (address)) store church-b) 1 0)) ((church-force (cons 'a2843 . (address)) store church-/) (cons 'a2844 . (address)) store ((church-force (cons 'a2845 . (address)) store church-+) (cons 'a2846 . (address)) store 1 0.5) ((church-force (cons 'a2847 . (address)) store church-+) (cons 'a2848 . (address)) store 1 ((church-force (cons 'a2849 . (address)) store church-*) (cons 'a2850 . (address)) store 3 0.5))) church-error-tolerance "symmetric dirichlet-discrete, unconditioned.")) (church-force (cons 'a2851 . (address)) store ((church-force (cons 'a2852 . (address)) store church-check-test) (cons 'a2853 . (address)) store ((church-force (cons 'a2854 . (address)) store church-repeat) (cons 'a2855 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2856 . (address)) store church-mh-query) (cons 'a2857 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-bb ((church-force (cons 'a2858 . (address)) store church-make-dirichlet-discrete) (cons 'a2859 . (address)) store ((church-force (cons 'a2860 . (address)) store church-list) (cons 'a2861 . (address)) store 0.5 0.5)))) ((church-force (cons 'a2862 . (address)) store church-pair) (cons 'a2863 . (address)) store ((church-force (cons 'a2864 . (address)) store church-=) (cons 'a2865 . (address)) store 0 ((church-force (cons 'a2866 . (address)) store church-bb) (cons 'a2867 . (address)) store)) (lambda (address store) ((church-force (cons 'a2868 . (address)) store church-=) (cons 'a2869 . (address)) store 0 ((church-force (cons 'a2870 . (address)) store church-bb) (cons 'a2871 . (address)) store))))))))) (lambda (address store church-b) (if (church-force (cons 'a2872 . (address)) store church-b) 1 0)) ((church-force (cons 'a2873 . (address)) store church-/) (cons 'a2874 . (address)) store ((church-force (cons 'a2875 . (address)) store church-+) (cons 'a2876 . (address)) store 1 0.5) ((church-force (cons 'a2877 . (address)) store church-+) (cons 'a2878 . (address)) store 1 ((church-force (cons 'a2879 . (address)) store church-*) (cons 'a2880 . (address)) store 2 0.5))) church-error-tolerance "symmetric dirichlet-discrete, conditioned.")) (church-force (cons 'a2881 . (address)) store ((church-force (cons 'a2882 . (address)) store church-check-test) (cons 'a2883 . (address)) store ((church-force (cons 'a2884 . (address)) store church-repeat) (cons 'a2885 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2886 . (address)) store church-mh-query) (cons 'a2887 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-draw-type ((church-force (cons 'a2888 . (address)) store church-make-CRP) (cons 'a2889 . (address)) store church-crp-param)) (church-class ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2890 . (address)) store church-draw-type) (cons 'a2891 . (address)) store))))) ((church-force (cons 'a2892 . (address)) store church-pair) (cons 'a2893 . (address)) store ((church-force (cons 'a2894 . (address)) store church-eq?) (cons 'a2895 . (address)) store ((church-force (cons 'a2896 . (address)) store church-class) (cons 'a2897 . (address)) store 'bob) ((church-force (cons 'a2898 . (address)) store church-class) (cons 'a2899 . (address)) store 'jim)) (lambda (address store) ((church-force (cons 'a2900 . (address)) store church-eq?) (cons 'a2901 . (address)) store ((church-force (cons 'a2902 . (address)) store church-class) (cons 'a2903 . (address)) store 'bob) ((church-force (cons 'a2904 . (address)) store church-class) (cons 'a2905 . (address)) store 'mary))))))))) (lambda (address store church-x) (if (church-force (cons 'a2906 . (address)) store church-x) 1 0)) ((church-force (cons 'a2907 . (address)) store church-/) (cons 'a2908 . (address)) store 2.0 ((church-force (cons 'a2909 . (address)) store church-+) (cons 'a2910 . (address)) store 2.0 church-crp-param)) church-error-tolerance "CRP third customer at first table, conditioned on second customer at first table.")) (church-force (cons 'a2911 . (address)) store ((church-force (cons 'a2912 . (address)) store church-check-test) (cons 'a2913 . (address)) store ((church-force (cons 'a2914 . (address)) store church-repeat) (cons 'a2915 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2916 . (address)) store church-mh-query) (cons 'a2917 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-draw-type ((church-force (cons 'a2918 . (address)) store church-DPmem) (cons 'a2919 . (address)) store 1.0 church-gensym)) (church-class ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-x) ((church-force (cons 'a2920 . (address)) store church-draw-type) (cons 'a2921 . (address)) store))))) ((church-force (cons 'a2922 . (address)) store church-pair) (cons 'a2923 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2924 . (address)) store church-eq?) (cons 'a2925 . (address)) store ((church-force (cons 'a2926 . (address)) store church-class) (cons 'a2927 . (address)) store 'bob) ((church-force (cons 'a2928 . (address)) store church-class) (cons 'a2929 . (address)) store 'mary))))))))) (lambda (address store church-x) (if (church-force (cons 'a2930 . (address)) store church-x) 1 0)) 0.5 church-error-tolerance "DPmem of gensym, unconditioned.")) (church-force (cons 'a2931 . (address)) store ((church-force (cons 'a2932 . (address)) store church-check-test) (cons 'a2933 . (address)) store ((church-force (cons 'a2934 . (address)) store church-repeat) (cons 'a2935 . (address)) store church-runs (lambda (address store) ((church-force (cons 'a2936 . (address)) store church-mh-query) (cons 'a2937 . (address)) store church-samples church-lag (lambda (address store) (letrec ((church-draw-type ((church-force (cons 'a2938 . (address)) store church-make-CRP) (cons 'a2939 . (address)) store church-CRP-param)) (church-obs ((lambda (mem-address store proc) (lambda (address store . args) (church-apply (cons args mem-address) store proc args))) address store (lambda (address store church-type) ((church-force (cons 'a2940 . (address)) store church-make-symmetric-dirichlet-discrete) (cons 'a2941 . (address)) store 3 church-dirichlet-param))))) ((church-force (cons 'a2942 . (address)) store church-pair) (cons 'a2943 . (address)) store church-true (lambda (address store) ((church-force (cons 'a2944 . (address)) store church-=) (cons 'a2945 . (address)) store ((church-force (cons 'a2946 . (address)) store church-sample) (cons 'a2947 . (address)) store ((church-force (cons 'a2948 . (address)) store church-obs) (cons 'a2949 . (address)) store ((church-force (cons 'a2950 . (address)) store church-draw-type) (cons 'a2951 . (address)) store))) ((church-force (cons 'a2952 . (address)) store church-sample) (cons 'a2953 . (address)) store ((church-force (cons 'a2954 . (address)) store church-obs) (cons 'a2955 . (address)) store ((church-force (cons 'a2956 . (address)) store church-draw-type) (cons 'a2957 . (address)) store))))))))))) (lambda (address store church-x) (if (church-force (cons 'a2958 . (address)) store church-x) 1 0)) ((church-force (cons 'a2959 . (address)) store church-+) (cons 'a2960 . (address)) store ((church-force (cons 'a2961 . (address)) store church-*) (cons 'a2962 . (address)) store ((church-force (cons 'a2963 . (address)) store church-/) (cons 'a2964 . (address)) store 1 ((church-force (cons 'a2965 . (address)) store church-+) (cons 'a2966 . (address)) store 1 church-CRP-param)) ((church-force (cons 'a2967 . (address)) store church-/) (cons 'a2968 . (address)) store ((church-force (cons 'a2969 . (address)) store church-+) (cons 'a2970 . (address)) store 1 church-dirichlet-param) ((church-force (cons 'a2971 . (address)) store church-+) (cons 'a2972 . (address)) store 1 ((church-force (cons 'a2973 . (address)) store church-*) (cons 'a2974 . (address)) store 3 church-dirichlet-param)))) ((church-force (cons 'a2975 . (address)) store church-*) (cons 'a2976 . (address)) store ((church-force (cons 'a2977 . (address)) store church-/) (cons 'a2978 . (address)) store church-CRP-param ((church-force (cons 'a2979 . (address)) store church-+) (cons 'a2980 . (address)) store 1 church-CRP-param)) ((church-force (cons 'a2981 . (address)) store church-/) (cons 'a2982 . (address)) store 1 3))) church-error-tolerance "varying numbers of xrps inside mem.")) "tests done!")))
./bher/church/beam-learning.church~:;; (let* ([all-examples (map tree->program data)]
./bher/church/beam-learning.church~: (let* ([literal-sexprs (map tree->program data)])
./bher/church/factor-graph.church~:(define (tree->program tree)
./bher/church/factor-graph.church~: (map tree->program (rest tree)))))
./bher/church/factor-graph.church~:(define (tree->generative-program proc-code)
./bher/church/factor-graph.church~: (list 'lambda '() (tree->program proc-code)))
./bher/church/beam-learning.church:;; (let* ([all-examples (map tree->program data)]
./bher/church/beam-learning.church: (let* ([literal-sexprs (map tree->program data)])
./bher/church/factor-graph.church:(define (tree->program tree)
./bher/church/factor-graph.church: (map tree->program (rest tree)))))