ADPfusionSet-0.0.0.1: Dynamic programming for Set data structures.

Safe HaskellNone
LanguageHaskell2010

ADP.Fusion.Term.Singleton.Set1

Contents

Description

Singleton vertices are only introduced into a set structure, if no vertex has been placed yet.

We explicitly check that X -> s is the only allowed rule, with s == Singleton, apart from introducing "deletion" symbols like X -> - s.

Synopsis

Documentation

Orphan instances

TermStaticVar Singleton (BS1 k O) Source # 

Methods

termStaticVar :: Singleton -> Context (BS1 k O) -> BS1 k O -> Context (BS1 k O) #

termStreamIndex :: Singleton -> Context (BS1 k O) -> BS1 k O -> BS1 k O #

TermStaticVar Singleton (BS1 k I) Source # 

Methods

termStaticVar :: Singleton -> Context (BS1 k I) -> BS1 k I -> Context (BS1 k I) #

termStreamIndex :: Singleton -> Context (BS1 k I) -> BS1 k I -> BS1 k I #

TstCtx m ts s x0 i0 is (BS1 k O) => TermStream m (TermSymbol ts Singleton) s ((:.) is (BS1 k O)) Source #

TODO 17.2.2017 added; probably wrong together with the syntactic variable instance in subtle ways.

Methods

termStream :: TermSymbol ts Singleton -> Context (is :. BS1 k O) -> (is :. BS1 k O) -> (is :. BS1 k O) -> Stream m (TermState s Z Z) -> Stream m (TermState s (is :. BS1 k O) (TermArg (TermSymbol ts Singleton))) #

TstCtx m ts s x0 i0 is (BS1 k I) => TermStream m (TermSymbol ts Singleton) s ((:.) is (BS1 k I)) Source # 

Methods

termStream :: TermSymbol ts Singleton -> Context (is :. BS1 k I) -> (is :. BS1 k I) -> (is :. BS1 k I) -> Stream m (TermState s Z Z) -> Stream m (TermState s (is :. BS1 k I) (TermArg (TermSymbol ts Singleton))) #

TmkCtx1 m ls Singleton (BS1 k t) => MkStream m ((:!:) ls Singleton) (BS1 k t) Source # 

Methods

mkStream :: (ls :!: Singleton) -> Context (BS1 k t) -> BS1 k t -> BS1 k t -> Stream m (Elm (ls :!: Singleton) (BS1 k t)) #