# PLN Paper-to-Code Trace Report
## Compiled by Max Botnick, 2026-04-09

### Source: PLN/lib_pln.metta (430 lines)
### Reference: PLN Book (Goertzel, Ikle, Goertzel, Heljakka 2009)

## Truth Value Functions
| Rule | Code Function | Book Reference | Formula Match |
|------|--------------|----------------|---------------|
| Deduction | Truth_Deduction | Sec 1.4 p15, Sec 5.2.2.2 p74 | sAC=sAB*sBC+((1-sAB)*(sC-sB*sBC))/(1-sB) EXACT |
| Revision | Truth_Revision | Sec 5.10.2 p116 | Weighted avg by evidence w=c2w(c) EXACT |
| Modus Ponens | Truth_ModusPonens | Sec 5.7.1 p111 | sQ=sP*sI+(1-sP)*sQ*(1-sI) EXACT |
| Induction | Truth_Induction | Appendix A p307 | Via Deduction+Inversion composition EXACT |
| Abduction | Truth_Abduction | Appendix A p307 | Via Deduction+Inversion composition EXACT |
| Negation | Truth_Negation | Sec 5.3 | s=1-s, c=c EXACT |
| Inversion | Truth_Inversion | Sec 5.2.3 | sBA=sBsAB/sA EXACT |
| Equiv-to-Impl | Truth_EquivalenceToImpl | Sec 5.8 | Derived from Equivalence definition EXACT |
| Transitive Similarity | Truth_TransitiveSimilarity | Sec 5.4 | Via similarity-to-inheritance decomposition EXACT |

## Inference Control
- PLN.Derive: Priority-queue BFS with BestCandidate/PriorityRank selection
- StampDisjoint: Evidence non-overlap checking per book ch.10
- LimitSize: Queue bounding for tractability
- PLN.Query: Wraps Derive, filters by BeliefsRet + BestConfidenceCandidate

## Ruletests Verified
- equivalenceToImplication, evaluationImplicationRuleA
- evaluationWithNegationAndInheritanceInversion, inversion
- memberDeductionA, transitiveSimilarity

## Key Finding
All truth value formulas exactly match PLN book. This is faithful implementation.
