Agda.TypeChecking.SizedTypes.WarshallSolver

type Graph r f a

type Edge' r f a

type Key r f

type Nodes r f

type LabelledEdge r f

src

dest

lookupEdge

graphToList

graphFromList

insertEdge

outgoing

incoming

setFoldl

transClos

# Edge weights

data Weight

class Negative a

# Edge labels

data Label

toWeight

# Semiring with idempotent `+` == dioid

# Graphs

## Nodes

data Node rigid flex

isFlexNode

isZeroNode

isInftyNode

nodeToSizeExpr

## Edges

## Graphs

type Graphs r f a

emptyGraphs

mentions

addEdge

reflClos

implies

nodeFromSizeExpr

edgeFromConstraint

graphFromConstraints

graphsFromConstraints

type Hyp

type Hyp'

type HypGraph r f

hypGraph

hypConn

simplifyWithHypotheses

type ConGraph r f

constraintGraph

type ConGraphs r f

constraintGraphs

infinityFlexs

class SetToInfty f a

# Compute solution from constraint graph.

type Bound r f

emptyBound

data Bounds r f

edgeToLowerBound

edgeToUpperBound

graphToLowerBounds

graphToUpperBounds

bounds

smallest

largest

commonSuccs

commonPreds

lub'

glb'

lub

glb

findRigidBelow

solveGraph

solveGraphs

# Verify solution

verifySolution

iterateSolver

# Tests

testSuccs

testLub