star-0.0.0.2: *-semirings

Safe HaskellSafe
LanguageHaskell2010

StarSemiring

Synopsis

Documentation

class Semiring a where Source #

Minimal complete definition

zero, (<+>), one, (<.>)

Methods

zero :: a Source #

(<+>) :: a -> a -> a infixl 6 Source #

one :: a Source #

(<.>) :: a -> a -> a infixl 7 Source #

srsum :: [a] -> a Source #

srprod :: [a] -> a Source #

Instances

(Eq a, Num a) => Semiring (Compact a) Source # 
Semiring (Language a) Source # 
(Ord a, Num a) => Semiring (Tropical a) Source # 
Semiring (RE a) Source # 

Methods

zero :: RE a Source #

(<+>) :: RE a -> RE a -> RE a Source #

one :: RE a Source #

(<.>) :: RE a -> RE a -> RE a Source #

srsum :: [RE a] -> RE a Source #

srprod :: [RE a] -> RE a Source #

Semiring (StarSemiringExpr a) Source # 
(Ord a, Num a, Semiring b) => Semiring (ShortestPath a b) Source # 

newtype RE a Source #

Constructors

RE (StarSemiringExpr a) 

Instances

Eq a => Eq (RE a) Source # 

Methods

(==) :: RE a -> RE a -> Bool #

(/=) :: RE a -> RE a -> Bool #

Show a => Show (RE a) Source # 

Methods

showsPrec :: Int -> RE a -> ShowS #

show :: RE a -> String #

showList :: [RE a] -> ShowS #

StarSemiring (RE a) Source # 

Methods

star :: RE a -> RE a Source #

plus :: RE a -> RE a Source #

Semiring (RE a) Source # 

Methods

zero :: RE a Source #

(<+>) :: RE a -> RE a -> RE a Source #

one :: RE a Source #

(<.>) :: RE a -> RE a -> RE a Source #

srsum :: [RE a] -> RE a Source #

srprod :: [RE a] -> RE a Source #

re :: a -> RE a Source #

data Tropical a Source #

Constructors

Tropical a 
Infinity 

Instances

Eq a => Eq (Tropical a) Source # 

Methods

(==) :: Tropical a -> Tropical a -> Bool #

(/=) :: Tropical a -> Tropical a -> Bool #

Ord a => Ord (Tropical a) Source # 

Methods

compare :: Tropical a -> Tropical a -> Ordering #

(<) :: Tropical a -> Tropical a -> Bool #

(<=) :: Tropical a -> Tropical a -> Bool #

(>) :: Tropical a -> Tropical a -> Bool #

(>=) :: Tropical a -> Tropical a -> Bool #

max :: Tropical a -> Tropical a -> Tropical a #

min :: Tropical a -> Tropical a -> Tropical a #

Show a => Show (Tropical a) Source # 

Methods

showsPrec :: Int -> Tropical a -> ShowS #

show :: Tropical a -> String #

showList :: [Tropical a] -> ShowS #

(Ord a, Num a) => KleeneAlgebra (Tropical a) Source # 
(Ord a, Num a) => StarSemiring (Tropical a) Source # 
(Ord a, Num a) => Semiring (Tropical a) Source # 

evalRE :: KleeneAlgebra a => (l -> a) -> RE l -> a Source #

data Compact a Source #

Constructors

Real a 
Inf 

Instances

evalSSE :: StarSemiring a => (l -> a) -> StarSemiringExpr l -> a Source #