networks: Move sbf/state? to a better place.
This commit is contained in:
parent
c8e7d3733c
commit
74a3bb9e69
1 changed files with 7 additions and 7 deletions
14
networks.rkt
14
networks.rkt
|
@ -960,13 +960,6 @@
|
||||||
;;; applied to states in an unambiguous ways.
|
;;; applied to states in an unambiguous ways.
|
||||||
(struct tbf/state (weights threshold) #:transparent)
|
(struct tbf/state (weights threshold) #:transparent)
|
||||||
|
|
||||||
;;; A sign Boolean function (SBF) is a TBF whose threshold is 0.
|
|
||||||
(define sbf/state? (and/c tbf/state? (λ (tbf) (zero? (tbf/state-θ tbf)))))
|
|
||||||
|
|
||||||
(module+ test
|
|
||||||
(test-case "sbf/state?"
|
|
||||||
(check-true (sbf/state? (tbf/state #hash((a . -1) (b . 1)) 0)))))
|
|
||||||
|
|
||||||
;;; Shortcuts for acessing fields of a state/tbf.
|
;;; Shortcuts for acessing fields of a state/tbf.
|
||||||
(define tbf/state-w tbf/state-weights)
|
(define tbf/state-w tbf/state-weights)
|
||||||
(define tbf/state-θ tbf/state-threshold)
|
(define tbf/state-θ tbf/state-threshold)
|
||||||
|
@ -982,6 +975,13 @@
|
||||||
(check-equal? (tbf/state-w f) #hash((x1 . 1) (x2 . 1)))
|
(check-equal? (tbf/state-w f) #hash((x1 . 1) (x2 . 1)))
|
||||||
(check-equal? (tbf/state-θ f) 1)))
|
(check-equal? (tbf/state-θ f) 1)))
|
||||||
|
|
||||||
|
;;; A sign Boolean function (SBF) is a TBF whose threshold is 0.
|
||||||
|
(define sbf/state? (and/c tbf/state? (λ (tbf) (zero? (tbf/state-θ tbf)))))
|
||||||
|
|
||||||
|
(module+ test
|
||||||
|
(test-case "sbf/state?"
|
||||||
|
(check-true (sbf/state? (tbf/state #hash((a . -1) (b . 1)) 0)))))
|
||||||
|
|
||||||
;;; Applies a state TBF to its inputs.
|
;;; Applies a state TBF to its inputs.
|
||||||
;;;
|
;;;
|
||||||
;;; Applying a TBF consists in multiplying the weights by the
|
;;; Applying a TBF consists in multiplying the weights by the
|
||||||
|
|
Loading…
Reference in a new issue