unique-logic-tf-0.4.1.1: Solve simple simultaneous equations

Safe HaskellNone

UniqueLogic.ST.TF.System.Label

Contents

Synopsis

Preparation

globalVariable :: Monoid w => (a -> Writer w a) -> ST s (Variable w s a)Source

Posing statements

type T w = T (WriterT w)Source

localVariable :: (C w, Value w a) => T w s (Variable w s a)Source

constant :: (C w, Value w a) => a -> T w s (Variable w s a)Source

assignment2 :: C w => (a -> b) -> Variable w s a -> Variable w s b -> T w s ()Source

assignment3 :: C w => (a -> b -> c) -> Variable w s a -> Variable w s b -> Variable w s c -> T w s ()Source

data Apply w s a Source

Instances

arg :: Variable w s a -> Apply w s aSource

This function allows to generalize assignment2 and assignment3 to more arguments. You could achieve the same with nested applications of assignment3 (,).

runApply :: C w => Apply w s a -> Variable w s a -> T w s ()Source

Solution

solve :: C w => T w s a -> w (ST s) aSource

query :: Variable w s a -> ST s (Maybe a)Source