networks: Make build-all-states order the variables.
This commit is contained in:
parent
cd11bcc330
commit
401f895dd2
2 changed files with 7 additions and 7 deletions
|
@ -247,17 +247,17 @@
|
||||||
(random-seed 0)
|
(random-seed 0)
|
||||||
(define f (random-boolean-function/state '(x1 x2)))
|
(define f (random-boolean-function/state '(x1 x2)))
|
||||||
(check-equal? (tabulate-state/boolean f '(x1 x2))
|
(check-equal? (tabulate-state/boolean f '(x1 x2))
|
||||||
'((x1 x2 f) (#f #f #f) (#t #f #f) (#f #t #t) (#t #t #t)))
|
'((x1 x2 f) (#f #f #f) (#f #t #f) (#t #f #t) (#t #t #t)))
|
||||||
(check-equal? (tabulate-state/boolean f '(x1 x2) #:headers #f)
|
(check-equal? (tabulate-state/boolean f '(x1 x2) #:headers #f)
|
||||||
'((#f #f #f) (#t #f #f) (#f #t #t) (#t #t #t)))
|
'((#f #f #f) (#f #t #f) (#t #f #t) (#t #t #t)))
|
||||||
(define bn (random-boolean-network/vars 3))
|
(define bn (random-boolean-network/vars 3))
|
||||||
(check-equal? (tabulate-boolean-network bn)
|
(check-equal? (tabulate-boolean-network bn)
|
||||||
'((x0 x1 x2 f-x0 f-x1 f-x2)
|
'((x0 x1 x2 f-x0 f-x1 f-x2)
|
||||||
(#f #f #f #f #t #f)
|
(#f #f #f #f #t #f)
|
||||||
(#f #t #f #t #f #f)
|
(#f #f #t #t #f #f)
|
||||||
(#f #f #t #f #t #t)
|
(#f #t #f #f #t #t)
|
||||||
(#f #t #t #t #f #f)
|
(#f #t #t #t #f #f)
|
||||||
(#t #f #f #t #f #t)
|
(#t #f #f #t #f #t)
|
||||||
(#t #t #f #f #f #t)
|
(#t #f #t #f #f #t)
|
||||||
(#t #f #t #f #f #f)
|
(#t #t #f #f #f #f)
|
||||||
(#t #t #t #t #t #t)))))
|
(#t #t #t #t #t #t)))))
|
||||||
|
|
|
@ -219,7 +219,7 @@
|
||||||
;;; Given a hash-set mapping variables to generic sets of their
|
;;; Given a hash-set mapping variables to generic sets of their
|
||||||
;;; possible values, constructs the list of all possible states.
|
;;; possible values, constructs the list of all possible states.
|
||||||
(define (build-all-states vars-domains)
|
(define (build-all-states vars-domains)
|
||||||
(let* ([var-dom-list (hash->list vars-domains)]
|
(let* ([var-dom-list (hash-map vars-domains (λ (x y) (cons x y)) #t)]
|
||||||
[vars (map car var-dom-list)]
|
[vars (map car var-dom-list)]
|
||||||
[domains (map cdr var-dom-list)])
|
[domains (map cdr var-dom-list)])
|
||||||
(for/list ([s (apply cartesian-product domains)])
|
(for/list ([s (apply cartesian-product domains)])
|
||||||
|
|
Loading…
Reference in a new issue