-instance (ExprSet ss, Expr w)
- => Expr (VariableShiftPredictOp ss w)
-instance (CommonExprSet ss, CommonExpr w)
- => CommonExpr (VariableShiftPredictOp ss w)
-
-data FixedShiftPredictOp sm w
- = FixedShiftPredictAverage !sm !w !Variable
- | FixedShiftPredictSigma !sm !w !Variable
+instance (ExprSet ss, Expr w, VarName vn)
+ => Expr (VariableShiftPredictOp ss w vn)
+instance (CommonExprSet ss, CommonExpr w, VarName vn)
+ => CommonExpr (VariableShiftPredictOp ss w vn)
+instance ( VarName vn
+ , VariableSet (MentionedVarsOf ss :++: MentionedVarsOf w)
+ ) => MentionedVars (VariableShiftPredictOp ss w vn) where
+ type MentionedVarsOf (VariableShiftPredictOp ss w vn)
+ = vn :*: (MentionedVarsOf ss :++: MentionedVarsOf w)
+
+-- FixedShiftPredictOp
+data FixedShiftPredictOp sm w vn
+ = FixedShiftPredictAverage !sm !w !(Variable vn)
+ | FixedShiftPredictSigma !sm !w !(Variable vn)