Induction in AGISystem2 is geometric envelope expansion. Given multiple examples of a concept, the system computes a bounded diamond that contains them all. This transforms learning from examples into finding the minimal enclosing shape.
Induction creates a bounded diamond that encloses all examples. Given 5 dogs (Rover, Buddy, Max, Luna, Rex), the system computes a "Dog" concept as the minimal diamond containing all 5 points. New dogs will fall inside this region.
The ClusterManager handles induction when new facts arrive:
Expansion adjusts the diamond's center, min/max bounds, and radius to include the new point while keeping the shape minimal.
Unlike batch learning algorithms, AGISystem2's induction is incremental. Each new example updates the concept immediately:
# First dog ASSERT Rover IS_A Dog # Creates initial "Dog" diamond centered on Rover # More examples expand it ASSERT Buddy IS_A Dog ASSERT Max IS_A Dog ASSERT Luna IS_A Dog # Diamond grows to encompass all # Query generalization ASK "Fido IS_A Dog?" # TRUE if Fido's vector falls inside the Dog diamond
If examples are too spread out, the ClusterManager may split a concept into multiple subconcepts rather than creating one huge diamond. This happens when:
| Aspect | Deduction | Induction |
|---|---|---|
| Direction | General → Specific | Specific → General |
| Geometry | Containment check | Envelope construction |
| Certainty | Guaranteed if premises true | Probable (may have exceptions) |
| Operation | Query (read) | Assert (write) |