@@ -39,13 +39,13 @@ square root of variance."
39
39
(dotimes (i n)
40
40
(setf (aref x i) (* sd (draw-standard-normal))))
41
41
(e+ mean (mm variance-left-sqrt x))))
42
- (sub (&rest index-specifications )
43
- (let+ (((index-specification) index-specifications )
44
- (mean (sub mean index-specification ))
45
- (variance (sub (variance instance) index-specification )))
46
- (if (vectorp mean)
47
- (r-multivariate-normal mean variance)
48
- (r-normal mean variance)))))
42
+ (slice (&rest slices )
43
+ (let+ (((slice) slices )
44
+ (mean (slice mean slice ))
45
+ (variance (slice (variance instance) slice slice )))
46
+ (if (vectorp mean)
47
+ (r-multivariate-normal mean variance)
48
+ (r-normal mean variance)))))
49
49
50
50
; ;; Multivariate T distribution
51
51
; ;;
@@ -107,9 +107,9 @@ square root of variance."
107
107
(let ((scaling-factor (draw scaling-factor)))
108
108
(values (draw multivariate-normal :scale scaling-factor)
109
109
scaling-factor)))
110
- (sub (&rest index-specifications )
111
- (let+ (((index-specification) index-specifications )
112
- (normal (sub multivariate-normal index-specification ))
110
+ (slice (&rest slices )
111
+ (let+ (((slice) slices )
112
+ (normal (slice multivariate-normal slice ))
113
113
((&accessors-r/o nu s^2) scaling-factor))
114
114
(etypecase normal
115
115
(r-normal
@@ -190,11 +190,10 @@ returned as decompositions.")
190
190
(alpha0 :type internal-float :documentation " Sum of alphas." ))
191
191
(let ((alpha (as-float-vector alpha :copy? t )))
192
192
(make :alpha alpha :alpha0 (clnu :sum alpha)))
193
- (cl-slice :slice
194
- (&rest slices)
195
- (let+ (((slice) slices)
196
- (slice (cl-slice-dev :canonical-representation (length alpha) slice)))
197
- (if (cl-slice-dev :singleton-representation? slice)
198
- (let ((alpha (aref alpha slice)))
199
- (r-beta alpha (- alpha0 alpha)))
200
- (error " Not implemented for multivariate selections." )))))
193
+ (slice (&rest slices)
194
+ (let+ (((slice) slices)
195
+ (slice (cl-slice-dev :canonical-representation (length alpha) slice)))
196
+ (if (cl-slice-dev :singleton-representation? slice)
197
+ (let ((alpha (aref alpha slice)))
198
+ (r-beta alpha (- alpha0 alpha)))
199
+ (error " Not implemented for multivariate selections." )))))
0 commit comments