liquid-fixpoint-0.5.0.1: Predicate Abstraction-based Horn-Clause/Implication Constraint Solver

Safe HaskellNone
LanguageHaskell98

Language.Fixpoint.Partition

Contents

Description

This module implements functions to build constraint / kvar dependency graphs, partition them and print statistics about their structure.

Synopsis

Split constraints

data CPart a Source

Constraint Partition Container --------------------------------------------

Constructors

CPart 

Instances

partition' Source

Arguments

:: Maybe MCInfo

Nothing to produce the maximum possible number of partitions. Or a MultiCore Info to control the partitioning

-> FInfo a 
-> (KVGraph, [FInfo a]) 

Partition an FInfo into multiple disjoint FInfos

partitionN Source

Arguments

:: MCInfo

describes thresholds and partiton amounts

-> FInfo a

The originial FInfo

-> [CPart a]

A list of the smallest possible CParts

-> [FInfo a]

At most N partitions of at least thresh work

Partition an FInfo into a specific number of partitions of roughly equal amounts of work

Information about cores

data MCInfo Source

Multicore info ------------------------------------------------------------

Constructors

MCInfo 

Instances

Queries over dependencies

data GDeps a Source

Generic Dependencies ------------------------------------------------------

Constructors

Deps 

Fields

depCuts :: !(HashSet a)
 
depNonCuts :: !(HashSet a)
 

Instances

Show a => Show (GDeps a) Source 
(Eq a, Hashable a) => Monoid (GDeps a) Source 

deps :: TaggedC c a => GInfo c a -> GDeps KVar Source

Compute Dependencies and Cuts ---------------------------------------------

Debug

elimSolGraph :: Config -> Solution -> IO () Source

Build and print the graph of post eliminate solution, which has an edge from k -> k' if k' appears directly inside the "solution" for k