Categorygithub.com/mailstepcz/inference
modulepackage
0.1.1
Repository: https://github.com/mailstepcz/inference.git
Documentation: pkg.go.dev

# README

inference

Inference engine written in Go

# Functions

AVMFromMap converts a map into an AVM.
BeginReadOnlyTransaction provides a built-in predicate beginning a read-only transaction.
BeginTransaction provides a built-in predicate beginning a transaction.
Bottom returns the bottom value of the value.
BuiltinBagOf is an in-built predicate for collecting all the results of a goal.
BuiltinCall is an in-built predicate for calling dynamically built predicates.
BuiltinCloseChannel is an in-built predicate for closing channels.
BuiltinFail is an in-built predicate which always fails.
BuiltinFree is an in-built predicate for checking whether a value is a free variable.
BuiltinGround is an in-built predicate for checking whether a value is ground.
BuiltinIsPlus is an in-built predicate for addition.
BuiltinIsString is an in-built predicate for checking whether a value is a string.
BuiltinNot is an in-built predicate for negation as failure.
BuiltinReceiveAllFromChannel is an in-built predicate for receiving data from channels in a cycle.
BuiltinReceiveFromChannel is an in-built predicate for receiving data from channels.
BuiltinSendToChannel is an in-built predicate for sending data to channels.
BuiltinTermAsList is an in-built predicate for converting terms into lists and vice versa.
BuiltinWriteln is an in-built predicate for writing to the standard output.
CommitTransaction provides a built-in predicate committing a transaction.
FetchUsers provides a built-in predicate performing user fetches.
GenericFetch provides a built-in predicate performing database queries.
MapFromAVM converts an AVM into a map.
NewEngine creates a new inference engine by parsing source code into predicates.
NewEngineFromSymbolicExpression creates a new inference engine from a symbolic expression.
TransitiveClosureOnGroups provides a built-in predicate performing recursive queries on subgroups.

# Variables

ErrIllFormed signifies a parse error.

# Structs

ASTAVM is an AVM.
ASTFloat is a float node.
ASTIdent is an identifier node.
ASTInteger is an integer node.
ASTKVPair is a key-value pair.
ASTNil is a nil node.
ASTRule is a rule node.
ASTSLGDirective is an SLG directive.
ASTString is a string node.
ASTTerm is a compound term node.
ASTType is a type node.
ASTTypeAnnot is a type annotation node.
AVM is an attribute-value matrix.
Channel is a channel value.
CompoundTerm is a compound term.
Engine is an inference engine with a set of predicates.
EvalContext is an evaluation context for a goal.
Nil is a nil value.
Pointer is a pointer value.
Rule is a Horn clause.
Signature represents the signature of a predicate.
TermTemplate is a term template.
Type is a type checked by the type checker.
Var is a variable that can be either free or bound.

# Interfaces

AST is an abstract syntax tree.
ASTExpr is an expression node.
Value is a value used by the inference engine.

# Type aliases

Atom is an atomic value.
Float is a float value.
Integer is an integer value.
String is a string value.