regexpr-symbolic-0.2: Equality, containment, intersection among regular expressions via symbolic manipulation

RegExpr.RegExprOperations

Documentation

data RE a whereSource

Constructors

Phi :: RE a 
Empty :: RE a 
L :: a -> RE a 
Choice :: RE a -> RE a -> RE a 
Seq :: RE a -> RE a -> RE a 
Star :: RE a -> RE a 
Var :: Int -> RE a 

Instances

Eq a => Eq (RE a) 
Show a => Show (RE a) 

type Word a = [a]Source

resToRE :: [RE a] -> RE aSource

sigmaRE :: Eq a => RE a -> [a]Source

deriv :: Eq a => RE a -> a -> RE aSource

partDeriv :: Eq a => RE a -> a -> [RE a]Source

type Env a = [((RE a, RE a), RE a)]Source

intersectREFAiled :: Eq a => RE a -> RE a -> RE aSource

intersectCFailed :: Eq a => Env a -> RE a -> RE a -> RE aSource

convert :: Int -> RE a -> RE aSource

convert2 :: Int -> RE a -> (RE a, RE a)Source

intersect :: Eq a => RE a -> RE a -> RE aSource

intersectC :: Eq a => Int -> Env a -> RE a -> RE a -> RE aSource

type EnvEq a = [(RE a, RE a)]Source

equality :: Eq a => RE a -> RE a -> BoolSource

eqREC :: Eq a => EnvEq a -> RE a -> RE a -> BoolSource

containsRECheap :: Eq a => RE a -> RE a -> BoolSource

contains :: Eq a => RE a -> RE a -> BoolSource

containsC :: Eq a => EnvEq a -> RE a -> RE a -> BoolSource