Symbolic Logic
This module deals with symbolic logic.
Much of the code in this module is based on idea's found in
'Artifical Intelligence a Modern Approach' by Stuart Russel and
Peter norvig, published by Prentice Hall.
Normal classes:
Normal functions:
Indent(int) | Helper function for producing debug output. |
Literal(void) | Create an anonymous symbol. |
operator <<(ostream &,const LiteralC &) | |
Var(void) | Creat an anonymous variable. |
operator <<(ostream &,const BindSetC &) | output stream |
operator <<(istream &,BindSetC &) | input stream |
Tuple(const LiteralC &) | Create a tuple with 1 paramiter |
Tuple(const LiteralC &,const LiteralC &) | Create a tuple with 2 paramiters |
Tuple(const LiteralC &,const LiteralC &,const LiteralC &) | Create a tuple with 3 paramiters |
Unify(const LiteralC &,const LiteralC &,BindSetC &) | Unify s1 and s2 with binds bs. |
Unify(const LiteralC &,const LiteralC &) | Test if s1 and s2 can be unified. |
operator <<(ostream &,const StateC &) | Write out to stream. |
operator >>(istream &,StateC &) | Read in from stream. |
Advanced classes:
BindC | Information about a single binding. |
LiteralIterWrapC | Wrap a simple iterator with one derived from LiteralIterC. |
StateOrIterC | Iterate through possible solutions in a state for a 'or' condition. |
StateAndIterC | Iterate through possible solutions in a state for a 'or' condition. |
Advanced functions:
|