Module

Causal.Kernel

Package
purescript-causal-graphs
Repository
colehaus/purescript-causal-graphs

#Cause Source

newtype Cause x

#AreDisjoint Source

data AreDisjoint x y

#Effect Source

newtype Effect x

#IsPathOf Source

data IsPathOf p g

#Path Source

data Path a

Constructors

Instances

#PathOf Source

data PathOf g

#allDirectedPaths Source

allDirectedPaths :: forall v k g. Ord k => { end :: k, start :: k } -> Named g (Graph k v) -> Set (Named (PathOf g) (Path k))

#allUndirectedPaths Source

allUndirectedPaths :: forall v k g. Ord k => TwoSet k -> Named g (Graph k v) -> Set (Named (PathOf g) (Path k))

#disjointnessCauseEffect Source

disjointnessCauseEffect :: forall a m n. Ord a => Named n { cause :: a, effect :: a } -> Named m (Set a) -> Maybe (Proof (AreDisjoint n m))

#disjointnessTwoSet Source

disjointnessTwoSet :: forall a m n. Ord a => Named n (TwoSet a) -> Named m (Set a) -> Maybe (Proof (AreDisjoint n m))

#disjointnessSingleton Source

disjointnessSingleton :: forall a m n. Ord a => Named n a -> Named m (Set a) -> Maybe (Proof (AreDisjoint n m))

#cause Source

cause :: forall a n. Named n { cause :: a, effect :: a } -> Named (Cause n) a

#cause_disjoint Source

cause_disjoint :: forall m n. Proof (AreDisjoint n m) -> Proof (AreDisjoint (Cause n) m)

#effect Source

effect :: forall a n. Named n { cause :: a, effect :: a } -> Named (Effect n) a

#effect_disjoint Source

effect_disjoint :: forall m n. Proof (AreDisjoint n m) -> Proof (AreDisjoint (Effect n) m)

#pathOf_isPathOf Source

pathOf_isPathOf :: forall a g. Named (PathOf g) a -> Proof (IsPathOf (PathOf g) g)