Type build-all-boolean-states.
This commit is contained in:
parent
eaabcd9a05
commit
d64b04a8f0
2 changed files with 22 additions and 14 deletions
27
networks.rkt
27
networks.rkt
|
@ -23,7 +23,7 @@
|
|||
network-form->network/01 make-boolean-network-form
|
||||
forms->boolean-network
|
||||
|
||||
build-all-states
|
||||
build-all-states build-all-boolean-states
|
||||
|
||||
list-syntactic-interactions build-syntactic-interaction-graph
|
||||
)
|
||||
|
@ -263,6 +263,18 @@
|
|||
#hash((a . #f) (b . 2))
|
||||
#hash((a . #f) (b . 3))))))
|
||||
|
||||
(: build-all-boolean-states (-> (Listof Variable) (Listof (State Boolean))))
|
||||
(define (build-all-boolean-states vars)
|
||||
(build-all-states (make-boolean-domains vars)))
|
||||
|
||||
(module+ test
|
||||
(test-case "build-all-boolean-states"
|
||||
(check-equal? (build-all-boolean-states '(a b))
|
||||
'(#hash((a . #f) (b . #f))
|
||||
#hash((a . #f) (b . #t))
|
||||
#hash((a . #t) (b . #f))
|
||||
#hash((a . #t) (b . #t))))))
|
||||
|
||||
(: list-syntactic-interactions
|
||||
(All (a) (-> (NetworkForm a) Variable (Listof Variable))))
|
||||
(define (list-syntactic-interactions nf x)
|
||||
|
@ -319,7 +331,6 @@
|
|||
[build-interaction-graph/form (-> network-form? graph?)]
|
||||
[build-signed-interaction-graph (-> network? graph?)]
|
||||
[build-signed-interaction-graph/form (-> network-form? graph?)]
|
||||
[build-all-boolean-states (-> (listof variable?) (listof state?))]
|
||||
[build-all-01-states (-> (listof variable?) (listof state?))]
|
||||
[make-asyn (-> (listof variable?) mode?)]
|
||||
[make-syn (-> (listof variable?) mode?)]
|
||||
|
@ -461,18 +472,6 @@
|
|||
;;; Inferring interaction graphs
|
||||
;;; ============================
|
||||
|
||||
;;; Builds all boolean states possible over a given set of variables.
|
||||
(define (build-all-boolean-states vars)
|
||||
(build-all-states (make-boolean-domains vars)))
|
||||
|
||||
(module+ test
|
||||
(test-case "build-all-boolean-states"
|
||||
(check-equal? (build-all-boolean-states '(a b))
|
||||
'(#hash((a . #f) (b . #f))
|
||||
#hash((a . #f) (b . #t))
|
||||
#hash((a . #t) (b . #f))
|
||||
#hash((a . #t) (b . #t))))))
|
||||
|
||||
;;; Builds all Boolean states over a given set of variables, but with
|
||||
;;; 0 and 1 for Boolean values.
|
||||
(define build-all-01-states
|
||||
|
|
|
@ -344,6 +344,15 @@ Given a @racket[DomainMapping], constructs the list of all possible states.
|
|||
(build-all-states (make-boolean-domains '(a b)))
|
||||
]}
|
||||
|
||||
@defproc[(build-all-boolean-states [vars (Listof Variable)])
|
||||
(Listof (State Boolean))]{
|
||||
|
||||
Builds all Boolean states over a given list of variables.
|
||||
|
||||
@ex[
|
||||
(build-all-boolean-states '(a b))
|
||||
]}
|
||||
|
||||
@section{Inferring interaction graphs}
|
||||
|
||||
This section provides inference of both unsigned and signed interaction graphs.
|
||||
|
|
Loading…
Reference in a new issue