flix

0.78.0

Fixpoint3

Functions for solving Datalog programs.

Modules

AstAbstract syntax trees used by the fixpoint solver.
BoxableFunctions for boxing and unboxing values, and for lifting functions to operate on boxed values.
BoxingThe purpose of this file is to represent every `Boxed` value with an `Int64`.
BoxingTypeThe purpose of this file is to record the transformation from Boxed values to Int64.
DebuggingFunctions for printing debug output during the fixpoint computation.
InterpreterInterpreter for executable RAM programs.
OptionsConfiguration options for the fixpoint solver.
PhasePhases of the fixpoint solver pipeline.
PrecedenceGraph`PrecedenceGraph` contains a graph module which is used to compute a stratification of a Datalog program. The stratification is based on a topological sort of the strongly connected components (SCC) of the precedence graph.
PredicateThis file provides an interface for interacting with `Fixpoint.Ast.Ram.Predicates`. Core features include providing a list of all `RelSym` in `Predicates`, provide the `PredType` of a `RelSym` and transforming `RelSym` of one `PredType` into a `RelSym` of another `PredType`.
ProvenanceReconstructThis module reconstructs the proof tree given a provenance model. It does so by re-evaluating the program in a top-down fashion to prove the sought after atom. This search is augmented with knowledge about which facts are true and the rules used to construct them.
ReadWriteLockFunctions on read-write locks.
SolverFunctions for solving Datalog programs and querying their models.
TypeInfoThis module defines and offers an interface for dealing with the types of the Datalog engine.
UtilUtility functions for the fixpoint solver.

Traits

PredSymsOfTrait for types that contain predicate symbols.
SubstitutePredSymTrait for types that contain substitutable predicate symbols.

Enums

BoxedType of boxed values.

Structs

Counter`Counter` is a wrapper around `Ref` for a simple counter.
UniqueIntsThe purpose of `UniqueInts` is to assign unique numbers/identifiers to elements.