- A vector matcher scores "central venous catheter placement" and "cardiac catheterization" alike, two cardiovascular catheter procedures. Trial-AI evaluations flag this exact catheterization error (Fierce Biotech, 2025). Only a hierarchy knows one is-NOT-a the other. 🧵
- We built TrialProof to test one thesis: trial eligibility should be computed, not predicted. The LLM only reads the note. A SNOMED-CT knowledge graph resolves meaning. Deterministic logic decides who is eligible. No model gets a vote on the verdict.
- The catheter case is the proof. Central venous catheterization (392230005) is-NOT-a Cardiac catheterization (41976001). Different branches of SNOMED, no subsumption path between them. Both are real SCTIDs, checkable on any public SNOMED browser.
- A similarity score cannot represent "is-a." It also cannot represent "not." The note reads "no evidence of diabetes." The vector baseline matches diabetes at 1.0 and excludes an eligible patient. Our verifier strips the negated mention and returns ELIGIBLE.
- It cannot represent "unless" either. "No prior platinum unless adjuvant completed >12 months before randomization." One patient at 13 months: ELIGIBLE. Another, palliative intent: EXCLUDED. Same clause, opposite verdicts, both right. Date math, not a threshold.
- These are not language problems, they are logic problems. No amount of prompting adds is-a, negation, or temporal exceptions to a cosine score. So we stopped trying to make the model trustworthy and moved the decision into code you can audit.
- The decision engine is deterministic Python, outside the agent framework, and no LLM can override the gate. That is what makes it reproducible: re-scoring the gold set produces byte-identical output, 13 of 13. The reproducibility a regulator asks for.
- On a fixed 13-case labeled gold set, TrialProof scores 100% vs a fair lexical baseline's 53.8%. The number clinical ops cares about is eligible patients lost: 0 vs 3. The baseline's threshold was cross-validated to its own advantage, and it still lost those 3.
- When a note contradicts the ontology, which layer should win? We put the deterministic gate above the model on every criterion. Curious where other neuro-symbolic builders draw that line in a clinical setting. #NeuroSymbolicAI #KnowledgeGraphs #ClinicalTrials #HealthAI
- Eligibility computed, not predicted: let the model read, let auditable code decide, and every verdict exports as a CDISC SDTM IE record. The full walkthrough, benchmark, and knowledge graph are in the demo. veriprajna.com/demos/clinical-trial-recruitment-ai
Published on X · July 27, 2026
On social media
See this post on its original platform
In our archive