A first order model is a domain D of discourse and a valuation V.
A domain D is a set, and a valuation V is a map that associates expressions with values in the model. The domain of V should be a subset of D.
Construct a new Model.
| Parameters | |
| domain | A set of entities representing the domain of discourse of the model. |
| valuation | the valuation of the model. |
| prop | If this is set, then we are building a propositional model and don't require the domain of V to be subset of D. |
| Method | __init__ |
Undocumented |
| Method | __repr__ |
Undocumented |
| Method | __str__ |
Undocumented |
| Method | evaluate |
Read input expressions, and provide a handler for satisfy that blocks further propagation of the Undefined error. :param expr: An Expression of logic. :type g: Assignment :param g: an assignment to individual variables... |
| Method | i |
An interpretation function. |
| Method | satisfiers |
Generate the entities from the model's domain that satisfy an open formula. |
| Method | satisfy |
Recursive interpretation function for a formula of first-order logic. |
| Instance Variable | domain |
Undocumented |
| Instance Variable | valuation |
Undocumented |
Read input expressions, and provide a handler for satisfy that blocks further propagation of the Undefined error. :param expr: An Expression of logic. :type g: Assignment :param g: an assignment to individual variables. :rtype: bool or 'Undefined'
An interpretation function.
Assuming that parsed is atomic:
- if parsed is a non-logical constant, calls the valuation V
- else if parsed is an individual variable, calls assignment g
- else returns Undefined.
| Parameters | |
| parsed | an Expression of logic. |
| g:Assignment | an assignment to individual variables. |
| trace | Undocumented |
| Returns | |
| a semantic value | |
Generate the entities from the model's domain that satisfy an open formula.
| Parameters | |
| parsed:Expression | an open formula |
| varex:VariableExpression or str | the relevant free individual variable in parsed. |
| g:Assignment | a variable assignment |
| trace | Undocumented |
| nesting | Undocumented |
| Returns | |
| a set of the entities that satisfy parsed. | |
Recursive interpretation function for a formula of first-order logic.
Raises an Undefined error when parsed is an atomic string but is not a symbol or an individual variable.
| Parameters | |
| parsed | An expression of logic. |
| g:Assignment | an assignment to individual variables. |
| trace | Undocumented |
| Returns | |
| Returns a truth value or Undefined if parsed is complex, and calls the interpretation function i if parsed is atomic. | |