Code¶
algorithms¶
data structures¶
-
class
inference_logic.data_structures.PrologList(head, tail)[source]¶ A list in Prolog is build recursively out of the first, head, element and everything else, the tail.
equality¶
-
class
inference_logic.equality.Equality(free: Optional[Sequence[Set[inference_logic.data_structures.Variable]]] = None, fixed: Optional[Dict[Any, Set[inference_logic.data_structures.Variable]]] = None)[source]¶ There are two types of equality:
- free, a Variable X can be equal to any number of other Variables
- fixed, a hashable object h can be equal to any number of Variables so long as none of them are equal to any other hashable object.