Next: 2.5. Correcting Mistakes, part Up: 2. BUILDING AND FINDING Previous: 2.3. EXERCISE: Defining Relations

## 2.4. Asserting Propositions

To assert a proposition, i.e., to tell the SNePS knowledge-representation and reasoning system something that you want it to believe, evaluate the SNePSUL command assert. assert can take pairs of arguments: The first member of each pair is a relation; the second can be a node (or a list of nodes; see §2.30). assert builds a propositional node that has an arc that is labeled with the relation and that points to the node that is the second argument. If there are several such relation-node pairs, then the propositional node that is built has several arcs, each labeled with one of the relations, and each pointing to one of the nodes. Finally, the node that is built is asserted. SNePS automatically generates an identifier for the node that is built by the assert command. SNePS marks the fact that this node is asserted with an exclamation mark. For the details on assert, see UM§§ 1.4, 2.7.

Cassie is the computational cognitive agent implemented in SNePS. She can be thought of as the agent whose memory consists of the knowledge base represented in SNePS. (More information about Cassie and her relationship to SNePS can be found in Shapiro & Rapaport 1987.

Let's tell Cassie that Clyde is an elephant. There are several ways this can be represented. For the purposes of this tutorial, we'll represent it by a node that analyzes this proposition as: Clyde is a member of the class of elephants. To do this,

 evaluate: ```(assert member Clyde class elephant) ```

which will build a node with a member arc pointing to a node with the identifier Clyde and a class arc pointing to a node with the identifier elephant. SNePS asserts node M1 (which it represents as `M1!', since it asserted it, and didn't merely build it).

Next: 2.5. Correcting Mistakes, part Up: 2. BUILDING AND FINDING Previous: 2.3. EXERCISE: Defining Relations
William J. Rapaport 2003-09-22