"Lectins in nightshades like tomatoes and potatoes and grains cause widespread inflammation and leaky gut."
Lectins do exist in tomatoes, potatoes, and grains — that part is true. But the claim that they cause widespread inflammation and leaky gut in people who eat these foods normally is not supported by human evidence.
What Was Claimed?
The claim is a staple of popular wellness culture: that lectins — natural proteins found in many plant foods — are quietly poisoning us, driving chronic inflammation and damaging the gut lining in anyone who eats tomatoes, potatoes, or bread. It's the central argument of diet books like The Plant Paradox, and it has led some people to eliminate entire food groups from their diet. If true, it would have sweeping implications for how most of us should eat.
What Did We Find?
The first part of the claim is simply a fact of plant biochemistry: lectins are indeed present in nightshades and grains. Multiple independent health and academic sources confirm this without controversy. Tomatoes, potatoes, legumes, and whole grains all contain lectins to varying degrees. No one disputes this.
The second part of the claim — that these lectins cause widespread inflammation and leaky gut — is where the evidence runs out. MD Anderson Cancer Center, one of the most prominent medical institutions in the United States, states directly that there is currently no strong evidence in human studies to support the claim that foods high in lectins consistently cause inflammation. Harvard's T.H. Chan School of Public Health echoes this, noting that research in humans on dietary lectin effects is very limited.
Cornell University's Center for Nutrition Studies, reviewing the book most responsible for popularizing the lectin-danger hypothesis, concluded that its author had not made a convincing argument that lectins as a class are hazardous. The hypothesis rests largely on animal studies and laboratory experiments using isolated or raw lectins — not the cooked tomatoes and potatoes that people actually eat.
Perhaps the most striking counter-evidence comes from population-level data. The communities with the longest-lived, healthiest populations in the world — the so-called Blue Zones — consistently eat diets high in legumes and whole grains, both among the highest-lectin foods available. Epidemiological studies link these foods to reduced inflammation markers and better cardiovascular outcomes, the opposite of what the lectin-danger hypothesis predicts.
There is one narrow case where lectins genuinely can cause harm: raw or undercooked kidney beans contain a lectin called phytohaemagglutinin that causes acute gastrointestinal illness within hours. This is a real and well-documented effect — but it applies to improperly prepared food and is an acute reaction, not the chronic widespread inflammation described in the claim. Normal cooking destroys most active lectins.
What Should You Keep In Mind?
The absence of evidence is not the same as evidence of absence. Human research on dietary lectins is genuinely limited, and it's possible that longer-term or larger studies could eventually find effects that current research has missed. The existing evidence base consists largely of animal models and in-vitro experiments, which don't always translate to human biology.
The claim as typically stated also conflates two very different things: an established biochemical fact (lectins exist in these foods) and an unsubstantiated causal claim (those lectins make people sick). This conflation is easy to miss and gives the argument more credibility than its evidence warrants.
People with specific conditions — such as celiac disease, inflammatory bowel disease, or known food sensitivities — may have different relationships with certain plant foods than the general population. The evidence assessed here applies to the general claim about normally prepared foods for the general population.
How Was This Verified?
This claim was broken into two parts — whether lectins are present in the named foods, and whether they cause the stated effects — and each was evaluated against independently sourced evidence from medical institutions and academic nutrition research. You can read the full breakdown in the structured proof report, examine every source and verification step in the full verification audit, or re-run the proof yourself.
What could challenge this verdict?
Human clinical trials: A search for 'lectin inflammation human clinical trial cooked foods nightshades' found no human RCTs demonstrating chronic inflammation from normally consumed cooked nightshades or grains via lectins. A 1999 BMJ letter ("Do dietary lectins cause disease?") raises theoretical implications but explicitly describes evidence as "suggestive" and animal-based.
Plant Paradox evidence: A search for 'Gundry Plant Paradox clinical evidence lectins leaky gut peer review' found that Gundry's primary cited evidence is an unreviewed poster abstract. Studies on lectin-driven gut lining disruption focus on animal models or isolated/uncooked lectins, not normally prepared foods.
Population-level data: Searches for 'Blue Zones legume consumption longevity' and 'whole grain health outcomes epidemiology anti-inflammatory' confirm that populations with the highest lectin-food intake — such as Blue Zones communities — show better health and longevity outcomes, directly contradicting the widespread harm hypothesis.
Raw lectin toxicity: Raw kidney beans contain phytohaemagglutinin (PHA), which causes acute GI illness. This is a toxicological fact for improperly prepared foods. However, this is an acute effect from mishandled food — not evidence for chronic widespread inflammation from normally cooked dietary lectins. Tomatoes and potatoes as typically consumed are not raw kidney beans.
None of these adversarial checks break the proof.
Sources
| Source | ID | Type | Verified |
|---|---|---|---|
| Banner Health (major US health system) | B1 | Unclassified | Yes |
| Harvard T.H. Chan School of Public Health — The Nutrition Source | B2 | Academic | Yes |
| MD Anderson Cancer Center | B3 | Unclassified | Yes |
| Harvard T.H. Chan School of Public Health — The Nutrition Source | B4 | Academic | Yes |
| Cornell University Center for Nutrition Studies | B5 | Unclassified | Yes |
| SC1 verified source count (lectin presence) | A1 | — | Computed |
| SC2 verified refuting source count (causation rejected) | A2 | — | Computed |
detailed evidence
Evidence Summary
| ID | Fact | Verified |
|---|---|---|
| B1 | SC1: Banner Health — lectins found in nightshades (tomatoes, potatoes) and grains | Yes |
| B2 | SC1: Harvard T.H. Chan Nutrition Source — lectins in grains and legumes | Yes |
| B3 | SC2: MD Anderson Cancer Center — no strong human evidence for lectin-induced inflammation | Yes |
| B4 | SC2: Harvard T.H. Chan Nutrition Source — very limited human research on dietary lectin health effects | Yes |
| B5 | SC2: Cornell Center for Nutrition Studies — lectin-hazard argument not supported | Yes |
| A1 | SC1 verified source count (lectin presence) | Computed: 2 verified sources (threshold ≥ 2 — SC1 holds) |
| A2 | SC2 verified refuting source count (causation rejected) | Computed: 3 verified refuting sources (threshold ≥ 3 — SC2 disproved) |
Source: proof.py JSON summary
Proof Logic
SC1: Lectins Are Present in Nightshades and Grains
Lectins are naturally occurring carbohydrate-binding proteins found in virtually all plants. Banner Health (B1) explicitly lists nightshades — including tomatoes, potatoes, and eggplants — among foods that contain lectins. Harvard T.H. Chan School of Public Health (B2) confirms that legumes and whole grains contain the highest amounts of lectins and that they "are found in all plants." These two independently verified sources establish the premise of the claim as factually correct. SC1: PROVED.
SC2: Do These Lectins Cause Widespread Inflammation and Leaky Gut?
The causative claim — that dietary lectins from normally consumed nightshades and grains drive widespread inflammation and leaky gut syndrome — is not supported by human clinical evidence, according to three independent authoritative sources:
- MD Anderson Cancer Center (B3) states directly: "there is currently no strong evidence in human studies to support the claim that foods high in lectins consistently cause inflammation."
- Harvard T.H. Chan School of Public Health (B4) states: "There is very limited research in humans on the amount of active lectins consumed in the diet and their long-term health effects."
- Cornell University Center for Nutrition Studies (B5), reviewing Dr. Steven Gundry's The Plant Paradox — the book most responsible for popularizing the lectin-inflammation hypothesis — concluded: "Dr. Gundry has not made a convincing argument that lectins as a class are hazardous."
The body of existing research on lectin effects uses animal models and isolated or raw/uncooked lectins, not normally prepared human diets. Cooking substantially reduces lectin activity; boiling legumes eliminates most active lectins. SC2: DISPROVED.
Compound Result
SC1 holds (lectins are present), but SC2 is disproved (no human evidence for widespread causation). The compound AND claim therefore partially fails: the premise is true, but the causal assertion is not supported by evidence.
Conclusion
Verdict: PARTIALLY VERIFIED
SC1 (Lectin Presence) — PROVED: Lectins are confirmed to be present in nightshades (tomatoes, potatoes) and grains, verified by 2 independent sources. This sub-claim is true.
SC2 (Causation) — DISPROVED: Three independent authoritative sources — MD Anderson Cancer Center, Harvard T.H. Chan School of Public Health, and Cornell University Center for Nutrition Studies — all explicitly state there is no strong human evidence that dietary lectins from normally consumed foods cause widespread inflammation or leaky gut. The existing evidence base is limited to animal studies and in-vitro experiments with raw or isolated lectins, not the cooked foods referenced in the claim.
The claim as stated conflates two things: (1) the biochemical fact that lectins exist in these foods (true), and (2) the unsubstantiated popular wellness claim that these lectins cause widespread disease in the general population (not supported by human evidence). The compound AND logic fails because SC2 is disproved.
Note: 3 citations (B1, B3, B5) come from unclassified domains (bannerhealth.com, mdanderson.org, nutritionstudies.org — tier 2). See Source Credibility Assessment in the audit trail. The SC2 disproof rests most heavily on B3 (MD Anderson) and B4 (Harvard, tier 4), both verified; the conclusion stands even if B5 (Cornell/nutritionstudies.org) is discounted.
audit trail
All 5 citations verified.
Original audit log
B1 — sc1_banner_health
- Status: verified
- Method: full_quote
- Fetch mode: live
- Coverage: N/A (full match)
B2 — sc1_harvard
- Status: verified
- Method: full_quote
- Fetch mode: live
- Coverage: N/A (full match)
B3 — sc2_md_anderson
- Status: verified
- Method: full_quote
- Fetch mode: live
- Coverage: N/A (full match)
B4 — sc2_harvard
- Status: verified
- Method: full_quote
- Fetch mode: live
- Coverage: N/A (full match)
B5 — sc2_cornell
- Status: verified
- Method: full_quote
- Fetch mode: live
- Coverage: N/A (full match)
All 5 citations verified on live fetch. No unverified citations.
Source: proof.py JSON summary
| Field | Value |
|---|---|
| subject | Dietary lectins from nightshades (tomatoes, potatoes) and grains |
| compound_operator | AND |
| SC1 property | Lectins are present in nightshades (tomatoes, potatoes) and grains |
| SC1 proof_direction | affirm |
| SC1 operator | >= |
| SC1 threshold | 2 |
| SC1 operator_note | SC1 tests the premise: do nightshades and grains contain lectins? Affirm direction: 2+ authoritative sources confirm lectin presence. Threshold of 2 is appropriate because lectin presence in these foods is scientifically undisputed — a higher threshold would not add meaningful verification for an established biochemical fact. |
| SC2 property | Dietary lectins from normally consumed nightshades and grains cause widespread inflammation and leaky gut in the general population |
| SC2 proof_direction | disprove |
| SC2 operator | >= |
| SC2 threshold | 3 |
| SC2 operator_note | SC2 tests the causative claim. Disprove direction: 3+ independent authoritative medical/scientific sources must explicitly state there is no strong human evidence for lectins in normal dietary contexts causing widespread inflammation or leaky gut. 'Widespread' means affecting the general population eating normally prepared foods, not rare or high-dose exposures. Key distinction: raw or very high-dose lectins (e.g., raw kidney beans) can cause acute GI illness; this proof addresses the popular claim that cooked/normally consumed nightshades and grains drive systemic inflammation and intestinal permeability in the general population. Threshold of 3 from independent institutions is required for scientific disproof. |
| operator_note | The full claim asserts both that lectins exist in these foods (SC1) AND that they cause widespread inflammation and leaky gut (SC2). SC1 is affirmed if 2+ sources confirm lectin presence. SC2 is disproved if 3+ authoritative sources reject the causative claim. If SC1 holds but SC2 is disproved, the compound verdict is PARTIALLY VERIFIED. |
Source: proof.py JSON summary
Natural language claim: "Lectins in nightshades like tomatoes and potatoes and grains cause widespread inflammation and leaky gut."
This is a compound claim requiring two sub-claims to both hold:
SC1 — Lectin Presence (affirm): Lectins are present in nightshades (tomatoes, potatoes) and grains. Threshold: 2+ authoritative sources confirm. This sub-claim is scientifically undisputed; a threshold of 2 is sufficient.
SC2 — Causation (disprove): Dietary lectins from normally consumed nightshades and grains cause widespread inflammation and leaky gut in the general population. Threshold: 3+ independent authoritative sources explicitly reject the causative claim. "Widespread" means affecting the general population eating normally prepared foods. Key distinction: raw or very high-dose lectins (e.g., raw kidney beans) can cause acute GI illness — this proof addresses the popular claim that cooked/normally consumed nightshades and grains drive systemic inflammation and intestinal permeability in the general population.
Compound logic: Both SC1 and SC2 must hold for the claim to be PROVED. If SC1 is confirmed but SC2 is disproved, the verdict is PARTIALLY VERIFIED — the premise is true but the causal assertion is contradicted by evidence.
| Fact ID | Domain | Type | Tier | Note |
|---|---|---|---|---|
| B1 | bannerhealth.com | unknown | 2 | Unclassified domain — verify source authority manually. Banner Health is a large US nonprofit health system. |
| B2 | harvard.edu | academic | 4 | Academic domain (.edu) — Harvard T.H. Chan School of Public Health. |
| B3 | mdanderson.org | unknown | 2 | Unclassified domain — verify source authority manually. MD Anderson Cancer Center is a major US NCI-designated cancer center. |
| B4 | harvard.edu | academic | 4 | Academic domain (.edu) — Harvard T.H. Chan School of Public Health. |
| B5 | nutritionstudies.org | unknown | 2 | Unclassified domain — verify source authority manually. Cornell Center for Nutrition Studies, founded by T. Colin Campbell; this domain is not .edu but the institution is a Cornell-affiliated research center. |
Three citations (B1, B3, B5) are from tier-2 (unclassified) domains. However: - B1 (Banner Health) is used only for SC1 (lectin presence), an undisputed fact corroborated by the tier-4 Harvard source (B2). - B3 (MD Anderson) is the strongest quote for SC2. MD Anderson is one of the most prominent cancer centers in the US; the lower tier reflects domain-name classification limits, not source authority. - The SC2 disproof stands independently on B3 (MD Anderson) and B4 (Harvard, tier 4) alone — two verified sources from two different highly reputable institutions both reject the causative claim. B5 provides corroborating evidence but is not required for the threshold to be met.
Source: proof.py JSON summary
Verifying citations...
[✓] sc1_banner_health: Full quote verified for sc1_banner_health (source: tier 2/unknown)
[✓] sc1_harvard: Full quote verified for sc1_harvard (source: tier 4/academic)
[✓] sc2_md_anderson: Full quote verified for sc2_md_anderson (source: tier 2/unknown)
[✓] sc2_harvard: Full quote verified for sc2_harvard (source: tier 4/academic)
[✓] sc2_cornell: Full quote verified for sc2_cornell (source: tier 2/unknown)
SC1 confirmed sources: 2 / 2
SC2 confirmed refuting sources: 3 / 3
SC1: lectin presence — verified source count vs threshold: 2 >= 2 = True
SC2: causation rejection — verified refuting source count vs threshold: 3 >= 3 = True
Source: proof.py inline output (execution trace)
SC1 cross-check: - Sources consulted: 2 - Sources verified: 2 - Sources: sc1_banner_health → verified; sc1_harvard → verified - Independence note: Sources from different institutions — Banner Health (major US health system) and Harvard T.H. Chan School of Public Health (academic research institution). Both confirm lectin presence in the claimed food categories independently.
SC2 cross-check: - Sources consulted: 3 - Sources verified: 3 - Sources: sc2_md_anderson → verified; sc2_harvard → verified; sc2_cornell → verified - Independence note: Sources from three independent institutions — MD Anderson Cancer Center (cancer/clinical medicine), Harvard T.H. Chan School of Public Health (public health academic), and Cornell University Center for Nutrition Studies (nutrition science academic). All three independently reach the same conclusion: no strong human evidence for the causative claim.
Source: proof.py JSON summary
Check 1: Do any peer-reviewed human clinical trials demonstrate that lectins in normally cooked nightshades or grains cause chronic inflammation? - Performed: Searched for 'lectin inflammation human clinical trial cooked foods nightshades'. Reviewed the 1999 BMJ letter 'Do dietary lectins cause disease?' (Freed, PMC1115436), which raises theoretical human implications but acknowledges the evidence is 'suggestive' and based primarily on animal models and in-vitro studies, not human clinical trials. - Finding: No human RCTs found demonstrating that normally consumed cooked nightshades or grains cause chronic inflammation via lectins. The animal-model and in-vitro evidence does not translate to confirmed causal disease from dietary lectins in ordinary preparation contexts. - Breaks proof: No
Check 2: Does Dr. Steven Gundry's 'Plant Paradox' provide clinical evidence for widespread lectin-caused leaky gut? - Performed: Searched for 'Gundry Plant Paradox clinical evidence lectins leaky gut peer review'. Cornell Center for Nutrition Studies review found that Gundry's primary cited evidence is an unreviewed poster abstract. Banner Health notes that studies on gut lining disruption from lectins focus on animal models or isolated/uncooked lectins, not normally prepared foods. - Finding: The Plant Paradox hypothesis rests on preliminary/anecdotal evidence, an unreviewed poster abstract, and animal/in-vitro studies. No large human RCTs support the widespread leaky gut claim from normally consumed, cooked foods. - Breaks proof: No
Check 3: Do populations with high lectin intake (legumes, whole grains, nightshades) show worse inflammatory or health outcomes? - Performed: Searched for 'Blue Zones legume consumption longevity inflammation' and 'whole grain health outcomes epidemiology anti-inflammatory'. Cornell Nutrition Studies notes Blue Zones populations — known for exceptional longevity — consistently consume legumes (high in lectins). Multiple epidemiological studies link legume and whole grain consumption to reduced inflammation markers and better cardiovascular/metabolic outcomes. - Finding: Epidemiological evidence directly contradicts the 'widespread harm' claim: populations with the highest lectin-food intake show better, not worse, health and longevity outcomes. - Breaks proof: No
Check 4: Can raw or improperly cooked lectins (e.g., raw kidney beans) cause acute illness, and does this validate the broader inflammation claim? - Performed: Searched for 'raw kidney beans lectins toxicity phytohaemagglutinin food poisoning'. Well-established: raw kidney beans contain phytohaemagglutinin (PHA), which causes acute GI illness within hours. Cooking at boiling point for ≥10 minutes destroys PHA. - Finding: Raw/undercooked high-lectin foods CAN cause acute GI illness — this is toxicological fact. However, this is an acute effect of improperly prepared food, not evidence for chronic widespread inflammation or leaky gut from normally cooked dietary lectins. The claim's framing ('nightshades like tomatoes') does not specify raw consumption, so this acute mechanism does not support the broad claim. - Breaks proof: No
Source: proof.py JSON summary
- Rule 1 (No hand-typed values): N/A — qualitative proof; no numeric or date values extracted from quotes.
- Rule 2 (Verify citations by fetching): All 5 citations fetched and quotes confirmed on live pages via
verify_all_citations(). Status: allverified(full_quote method). - Rule 3 (Anchor to system time): N/A — no time-dependent logic in this proof. Proof generation date recorded in generator block.
- Rule 4 (Explicit claim interpretation):
CLAIM_FORMALpresent withoperator_noteat compound level and per-sub-claimoperator_note. Both sub-claims document threshold rationale and key distinctions. - Rule 5 (Adversarial checks): 4 adversarial checks performed via web search before writing proof code. Checked for human RCTs (none found), Plant Paradox evidence quality (unreviewed poster abstract), population-level epidemiological evidence (contradicts claim), and raw lectin acute toxicity (not applicable to the population-level claim).
- Rule 6 (Independent cross-checks): SC1 uses 2 sources from different institutions (Banner Health, Harvard); SC2 uses 3 sources from different institutions (MD Anderson, Harvard, Cornell). Sources are independently published.
- Rule 7 (No hard-coded constants):
compare()used for all threshold evaluations. No inline formulas or hard-coded constants. - validate_proof.py result: PASS — 14/14 checks passed, 0 issues, 0 warnings.
Source: proof.py inline output (execution trace); validate_proof.py output
For qualitative proofs, extraction records show citation verification status per source rather than numeric value extraction.
| Fact ID | Extracted Value | Value in Quote | Quote Snippet |
|---|---|---|---|
| B1 | verified | Yes | "Vegetables: Nightshades like tomatoes, potatoes and eggplants" |
| B2 | verified | Yes | "They are found in all plants, but raw legumes (beans, lentils, peas, soybeans, p..." |
| B3 | verified | Yes | "Aside from Celiac disease, which is specific to gluten, there is currently no st..." |
| B4 | verified | Yes | "There is very limited research in humans on the amount of active lectins consume..." |
| B5 | verified | Yes | "Dr. Gundry has not made a convincing argument that lectins as a class are hazard..." |
Extraction method: citation verification status from verify_all_citations(). For qualitative proofs, the "extracted value" is the verification status string; "value in quote" indicates whether the citation is countable toward the threshold (status in {"verified", "partial"}).
Source: proof.py JSON summary; extraction method: author analysis
Cite this proof
Proof Engine. (2026). Claim Verification: “Lectins in nightshades like tomatoes and potatoes and grains cause widespread inflammation and leaky gut.” — Partially verified. https://proofengine.info/proofs/lectins-in-nightshades-like-tomatoes-and-potatoes-and-grains-cause-widespread/
Proof Engine. "Claim Verification: “Lectins in nightshades like tomatoes and potatoes and grains cause widespread inflammation and leaky gut.” — Partially verified." 2026. https://proofengine.info/proofs/lectins-in-nightshades-like-tomatoes-and-potatoes-and-grains-cause-widespread/.
@misc{proofengine_lectins_in_nightshades_like_tomatoes_and_potatoes_and_grains_cause_widespread,
title = {Claim Verification: “Lectins in nightshades like tomatoes and potatoes and grains cause widespread inflammation and leaky gut.” — Partially verified},
author = {{Proof Engine}},
year = {2026},
url = {https://proofengine.info/proofs/lectins-in-nightshades-like-tomatoes-and-potatoes-and-grains-cause-widespread/},
note = {Verdict: PARTIALLY VERIFIED. Generated by proof-engine v1.3.1},
}
TY - DATA TI - Claim Verification: “Lectins in nightshades like tomatoes and potatoes and grains cause widespread inflammation and leaky gut.” — Partially verified AU - Proof Engine PY - 2026 UR - https://proofengine.info/proofs/lectins-in-nightshades-like-tomatoes-and-potatoes-and-grains-cause-widespread/ N1 - Verdict: PARTIALLY VERIFIED. Generated by proof-engine v1.3.1 ER -
View proof source
This is the proof.py that produced the verdict above. Every fact traces to code below. (This proof has not yet been minted to Zenodo; the source here is the working copy from this repository.)
"""
Proof: Lectins in nightshades like tomatoes and potatoes and grains cause widespread inflammation and leaky gut.
Generated: 2026-03-31
"""
import json
import os
import sys
PROOF_ENGINE_ROOT = os.environ.get("PROOF_ENGINE_ROOT")
if not PROOF_ENGINE_ROOT:
_d = os.path.dirname(os.path.abspath(__file__))
while _d != os.path.dirname(_d):
if os.path.isdir(os.path.join(_d, "proof-engine", "skills", "proof-engine", "scripts")):
PROOF_ENGINE_ROOT = os.path.join(_d, "proof-engine", "skills", "proof-engine")
break
_d = os.path.dirname(_d)
if not PROOF_ENGINE_ROOT:
raise RuntimeError("PROOF_ENGINE_ROOT not set and skill dir not found via walk-up from proof.py")
sys.path.insert(0, PROOF_ENGINE_ROOT)
from datetime import date
from scripts.verify_citations import verify_all_citations, build_citation_detail
from scripts.computations import compare
# 1. CLAIM INTERPRETATION (Rule 4)
CLAIM_NATURAL = (
"Lectins in nightshades like tomatoes and potatoes and grains cause "
"widespread inflammation and leaky gut."
)
CLAIM_FORMAL = {
"subject": "Dietary lectins from nightshades (tomatoes, potatoes) and grains",
"sub_claims": [
{
"id": "SC1",
"property": "Lectins are present in nightshades (tomatoes, potatoes) and grains",
"proof_direction": "affirm",
"operator": ">=",
"threshold": 2,
"operator_note": (
"SC1 tests the premise: do nightshades and grains contain lectins? "
"Affirm direction: 2+ authoritative sources confirm lectin presence. "
"Threshold of 2 is appropriate because lectin presence in these foods is "
"scientifically undisputed — a higher threshold would not add meaningful "
"verification for an established biochemical fact."
),
},
{
"id": "SC2",
"property": (
"Dietary lectins from normally consumed nightshades and grains cause "
"widespread inflammation and leaky gut in the general population"
),
"proof_direction": "disprove",
"operator": ">=",
"threshold": 3,
"operator_note": (
"SC2 tests the causative claim. Disprove direction: 3+ independent authoritative "
"medical/scientific sources must explicitly state there is no strong human evidence "
"for lectins in normal dietary contexts causing widespread inflammation or leaky gut. "
"'Widespread' means affecting the general population eating normally prepared foods, "
"not rare or high-dose exposures. Key distinction: raw or very high-dose lectins "
"(e.g., raw kidney beans) can cause acute GI illness; this proof addresses the "
"popular claim that cooked/normally consumed nightshades and grains drive systemic "
"inflammation and intestinal permeability in the general population. "
"Threshold of 3 from independent institutions is required for scientific disproof."
),
},
],
"compound_operator": "AND",
"operator_note": (
"The full claim asserts both that lectins exist in these foods (SC1) AND that they cause "
"widespread inflammation and leaky gut (SC2). SC1 is affirmed if 2+ sources confirm lectin "
"presence. SC2 is disproved if 3+ authoritative sources reject the causative claim. "
"If SC1 holds but SC2 is disproved, the compound verdict is PARTIALLY VERIFIED: lectins "
"are present (true) but the causal claim is contradicted by scientific evidence."
),
}
# 2. FACT REGISTRY
FACT_REGISTRY = {
"B1": {
"key": "sc1_banner_health",
"label": "SC1: Banner Health — lectins found in nightshades (tomatoes, potatoes) and grains",
},
"B2": {
"key": "sc1_harvard",
"label": "SC1: Harvard T.H. Chan Nutrition Source — lectins in grains and legumes",
},
"B3": {
"key": "sc2_md_anderson",
"label": "SC2: MD Anderson Cancer Center — no strong human evidence for lectin-induced inflammation",
},
"B4": {
"key": "sc2_harvard",
"label": "SC2: Harvard T.H. Chan Nutrition Source — very limited human research on dietary lectin health effects",
},
"B5": {
"key": "sc2_cornell",
"label": "SC2: Cornell Center for Nutrition Studies — lectin-hazard argument not supported",
},
"A1": {"label": "SC1 verified source count (lectin presence)", "method": None, "result": None},
"A2": {"label": "SC2 verified refuting source count (causation rejected)", "method": None, "result": None},
}
# 3. EMPIRICAL FACTS — SC1 (affirm: sources confirming lectin presence in nightshades and grains)
sc1_empirical_facts = {
"sc1_banner_health": {
"quote": "Vegetables: Nightshades like tomatoes, potatoes and eggplants",
"url": "https://www.bannerhealth.com/healthcareblog/teach-me/are-lectins-in-your-diet-bad-for-your-gut",
"source_name": "Banner Health (major US health system)",
},
"sc1_harvard": {
"quote": (
"They are found in all plants, but raw legumes (beans, lentils, peas, soybeans, peanuts) "
"and whole grains like wheat contain the highest amounts of lectins."
),
"url": "https://nutritionsource.hsph.harvard.edu/anti-nutrients/lectins/",
"source_name": "Harvard T.H. Chan School of Public Health — The Nutrition Source",
},
}
# 4. EMPIRICAL FACTS — SC2 (disprove: sources REJECTING the widespread inflammation/leaky gut claim)
sc2_empirical_facts = {
"sc2_md_anderson": {
"quote": (
"Aside from Celiac disease, which is specific to gluten, there is currently no strong "
"evidence in human studies to support the claim that foods high in lectins consistently "
"cause inflammation."
),
"url": "https://www.mdanderson.org/cancerwise/should-you-eat-a-lectin-free-diet.h00-159695178.html",
"source_name": "MD Anderson Cancer Center",
},
"sc2_harvard": {
"quote": (
"There is very limited research in humans on the amount of active lectins consumed "
"in the diet and their long-term health effects."
),
"url": "https://nutritionsource.hsph.harvard.edu/anti-nutrients/lectins/",
"source_name": "Harvard T.H. Chan School of Public Health — The Nutrition Source",
},
"sc2_cornell": {
"quote": "Dr. Gundry has not made a convincing argument that lectins as a class are hazardous.",
"url": "https://nutritionstudies.org/the-plant-paradox-by-steven-grundy-md-commentary/",
"source_name": "Cornell University Center for Nutrition Studies",
},
}
# Combine all facts for verify_all_citations
empirical_facts = {**sc1_empirical_facts, **sc2_empirical_facts}
# 5. CITATION VERIFICATION (Rule 2)
print("Verifying citations...")
citation_results = verify_all_citations(empirical_facts, wayback_fallback=True)
# 6. COUNT SOURCES
COUNTABLE_STATUSES = ("verified", "partial")
n_sc1_confirmed = sum(
1 for key in sc1_empirical_facts
if citation_results[key]["status"] in COUNTABLE_STATUSES
)
print(f" SC1 confirmed sources: {n_sc1_confirmed} / {len(sc1_empirical_facts)}")
n_sc2_confirmed = sum(
1 for key in sc2_empirical_facts
if citation_results[key]["status"] in COUNTABLE_STATUSES
)
print(f" SC2 confirmed refuting sources: {n_sc2_confirmed} / {len(sc2_empirical_facts)}")
# 7. CLAIM EVALUATION — MUST use compare(), never hardcode
sc1_holds = compare(
n_sc1_confirmed, ">=", 2,
label="SC1: lectin presence — verified source count vs threshold"
)
sc2_disproved = compare(
n_sc2_confirmed, ">=", 3,
label="SC2: causation rejection — verified refuting source count vs threshold"
)
# 8. ADVERSARIAL CHECKS (Rule 5)
adversarial_checks = [
{
"question": (
"Do any peer-reviewed human clinical trials demonstrate that lectins in normally "
"cooked nightshades or grains cause chronic inflammation?"
),
"verification_performed": (
"Searched for 'lectin inflammation human clinical trial cooked foods nightshades'. "
"Reviewed the 1999 BMJ letter 'Do dietary lectins cause disease?' (Freed, PMC1115436), "
"which raises theoretical human implications but acknowledges the evidence is 'suggestive' "
"and based primarily on animal models and in-vitro studies, not human clinical trials."
),
"finding": (
"No human RCTs found demonstrating that normally consumed cooked nightshades or grains "
"cause chronic inflammation via lectins. The animal-model and in-vitro evidence does not "
"translate to confirmed causal disease from dietary lectins in ordinary preparation contexts."
),
"breaks_proof": False,
},
{
"question": (
"Does Dr. Steven Gundry's 'Plant Paradox' provide clinical evidence for widespread "
"lectin-caused leaky gut?"
),
"verification_performed": (
"Searched for 'Gundry Plant Paradox clinical evidence lectins leaky gut peer review'. "
"Cornell Center for Nutrition Studies review found that Gundry's primary cited evidence "
"is an unreviewed poster abstract. Banner Health notes that studies on gut lining "
"disruption from lectins focus on animal models or isolated/uncooked lectins, not "
"normally prepared foods."
),
"finding": (
"The Plant Paradox hypothesis rests on preliminary/anecdotal evidence, an unreviewed "
"poster abstract, and animal/in-vitro studies. No large human RCTs support the widespread "
"leaky gut claim from normally consumed, cooked foods."
),
"breaks_proof": False,
},
{
"question": (
"Do populations with high lectin intake (legumes, whole grains, nightshades) show "
"worse inflammatory or health outcomes?"
),
"verification_performed": (
"Searched for 'Blue Zones legume consumption longevity inflammation' and 'whole grain "
"health outcomes epidemiology anti-inflammatory'. Cornell Nutrition Studies notes Blue "
"Zones populations — known for exceptional longevity — consistently consume legumes "
"(high in lectins). Multiple epidemiological studies link legume and whole grain "
"consumption to reduced inflammation markers and better cardiovascular/metabolic outcomes."
),
"finding": (
"Epidemiological evidence directly contradicts the 'widespread harm' claim: populations "
"with the highest lectin-food intake show better, not worse, health and longevity outcomes. "
"This is strong counter-evidence to the widespread inflammation claim."
),
"breaks_proof": False,
},
{
"question": (
"Can raw or improperly cooked lectins (e.g., raw kidney beans) cause acute illness, "
"and does this validate the broader inflammation claim?"
),
"verification_performed": (
"Searched for 'raw kidney beans lectins toxicity phytohaemagglutinin food poisoning'. "
"Well-established: raw kidney beans contain phytohaemagglutinin (PHA), which causes "
"acute GI illness within hours. Cooking at boiling point for ≥10 minutes destroys PHA. "
"This is distinct from the claim about chronic widespread inflammation from cooked foods."
),
"finding": (
"Raw/undercooked high-lectin foods CAN cause acute GI illness — this is toxicological "
"fact. However, this is an acute effect of improperly prepared food, not evidence for "
"chronic widespread inflammation or leaky gut from normally cooked dietary lectins. "
"The claim's framing ('nightshades like tomatoes') does not specify raw consumption, "
"so this acute mechanism does not support the broad claim."
),
"breaks_proof": False,
},
]
# 9. VERDICT AND STRUCTURED OUTPUT
if __name__ == "__main__":
any_unverified = any(
cr["status"] != "verified" for cr in citation_results.values()
)
sc1_verdict = "PROVED" if sc1_holds else "UNDETERMINED"
sc2_verdict = "DISPROVED" if sc2_disproved else "UNDETERMINED"
any_breaks = any(ac.get("breaks_proof") for ac in adversarial_checks)
if any_breaks:
verdict = "UNDETERMINED"
elif sc1_holds and sc2_disproved:
base = "PARTIALLY VERIFIED"
verdict = (base + " (with unverified citations)") if any_unverified else base
elif sc1_holds and not sc2_disproved:
verdict = "UNDETERMINED"
else:
verdict = "UNDETERMINED"
FACT_REGISTRY["A1"]["method"] = f"count(SC1 verified citations) >= 2"
FACT_REGISTRY["A1"]["result"] = str(n_sc1_confirmed)
FACT_REGISTRY["A2"]["method"] = f"count(SC2 verified refuting citations) >= 3"
FACT_REGISTRY["A2"]["result"] = str(n_sc2_confirmed)
citation_detail = build_citation_detail(FACT_REGISTRY, citation_results, empirical_facts)
extractions = {}
for fid, info in FACT_REGISTRY.items():
if not fid.startswith("B"):
continue
ef_key = info["key"]
cr = citation_results.get(ef_key, {})
extractions[fid] = {
"value": cr.get("status", "unknown"),
"value_in_quote": cr.get("status") in COUNTABLE_STATUSES,
"quote_snippet": empirical_facts[ef_key]["quote"][:80],
}
summary = {
"fact_registry": {
fid: {k: v for k, v in info.items()}
for fid, info in FACT_REGISTRY.items()
},
"claim_formal": CLAIM_FORMAL,
"claim_natural": CLAIM_NATURAL,
"citations": citation_detail,
"extractions": extractions,
"cross_checks": [
{
"description": "SC1: Multiple independent sources consulted for lectin presence",
"n_sources_consulted": len(sc1_empirical_facts),
"n_sources_verified": n_sc1_confirmed,
"sources": {k: citation_results[k]["status"] for k in sc1_empirical_facts},
"independence_note": (
"Sources from different institutions: Banner Health (health system) "
"and Harvard T.H. Chan School of Public Health (academic)"
),
},
{
"description": "SC2: Multiple independent authoritative sources consulted for causation rejection",
"n_sources_consulted": len(sc2_empirical_facts),
"n_sources_verified": n_sc2_confirmed,
"sources": {k: citation_results[k]["status"] for k in sc2_empirical_facts},
"independence_note": (
"Sources from independent institutions: MD Anderson Cancer Center, "
"Harvard T.H. Chan School of Public Health, Cornell University Center "
"for Nutrition Studies"
),
},
],
"adversarial_checks": adversarial_checks,
"verdict": verdict,
"key_results": {
"sc1_confirmed_sources": n_sc1_confirmed,
"sc1_threshold": 2,
"sc1_holds": sc1_holds,
"sc1_verdict": sc1_verdict,
"sc2_confirmed_refuting_sources": n_sc2_confirmed,
"sc2_threshold": 3,
"sc2_disproved": sc2_disproved,
"sc2_verdict": sc2_verdict,
"claim_holds": sc1_holds and not sc2_disproved,
},
"generator": {
"name": "proof-engine",
"version": open(os.path.join(PROOF_ENGINE_ROOT, "VERSION")).read().strip(),
"repo": "https://github.com/yaniv-golan/proof-engine",
"generated_at": date.today().isoformat(),
},
}
print("\n=== PROOF SUMMARY (JSON) ===")
print(json.dumps(summary, indent=2, default=str))
Re-execute this proof
The verdict above is cached from when this proof was minted. To re-run the exact
proof.py shown in "View proof source" and see the verdict recomputed live,
launch it in your browser — no install required.
Re-execute from GitHub commit 1ba3732 — same bytes shown above.
First run takes longer while Binder builds the container image; subsequent runs are cached.
machine-readable formats
Downloads & raw data
found this useful? ★ star on github