Teaching the Graph to Weigh Its Evidence
Three different sources have something to say about Max's appetite this month. His smart bowl has logged five smaller-than-usual breakfasts. A vet note mentions "monitor appetite." A dog-care book says goldens often eat less in summer heat.
Do we know Max's appetite has dropped? Sort of. Mostly. It depends — and "it depends" is precisely what most data systems can't represent. They store facts as present-or-absent: an edge exists in the graph or it doesn't.
This post explains the idea at the heart of our pet graph: every relationship carries a belief weight computed from accumulated evidence, using a piece of 1970s mathematics called Dempster–Shafer theory. It's how the graph distinguishes corroborated from repeated, contradicted from unknown — and it's what every ranking decision downstream runs on.
The concept: three buckets, not two
For any candidate fact — say Max —[has reduced]→ appetite — every piece of evidence gets to vote its weight into three buckets instead of two:
- Supports — this source indicates the fact holds.
- Refutes — this source indicates it doesn't.
- Can't tell — the honest remainder: uncertainty, kept explicitly.
That third bucket is the whole trick. A fact seen once, weakly, isn't "false" — it's mostly unknown. Classical true/false storage collapses that distinction; probability-style scores tend to bury it. Dempster–Shafer keeps uncertainty as a first-class quantity, and from the three buckets you get two useful numbers: belief (the evidence floor: how much directly supports the fact) and plausibility (the ceiling: one minus everything that refutes it). The truth lives somewhere in that interval.
A narrow interval up high means well-corroborated. A wide interval means the graph genuinely doesn't know yet — and can say so.

Why it matters for pet IoT
Device data makes this non-optional, for four very concrete reasons.
Sensors are honest but noisy. A bowl nudged across the floor is not a skipped meal. A tracker left in the car is not a lazy day. Any single reading deserves some belief, never full belief — so single observations must enter weak and strengthen only through pattern.
Repetition is not corroboration. A book that states the same claim in three chapters is one voice, three times. If each restatement counted as fresh evidence, verbose sources would dominate the graph. Evidence from an already-counted source must be discounted toward nothing.
Independent agreement is gold. When the bowl's measurements, a vet's clinical note, and breed literature converge on the same fact through completely different channels, that fact has earned real weight — automatically, without anyone hand-ranking which source to trust.
Disagreement must subtract, not shout. If a later vet note says the elimination diet ruled out a food allergy, that's not "one more data point" — it's evidence against an edge the graph already holds. The system needs a place to put negative evidence.
How it works: combining evidence
Every attestation of a fact arrives as its own little three-bucket assignment, and assignments merge by Dempster's rule of combination. When all the evidence is positive, the rule collapses to something delightfully simple — the noisy-OR:
combined belief = 1 − (1 − w₁) × (1 − w₂)
Each independent source knocks down the remaining uncertainty by its own contribution. Watch it run on Max's appetite:
- Bowl pattern alone: belief 0.60 → uncertainty remaining 0.40
- Vet note (0.70) joins:
1 − 0.40 × 0.30= 0.88 - Breed literature (0.50) joins:
1 − 0.12 × 0.50= 0.94
Belief climbs toward 1.0 and never quite arrives — the graph never becomes certain, only ever more convinced. And because the rule is order-independent, evidence can arrive in any sequence, from any pipeline worker, and land on the same number; the graph only ever stores the current combined state, not a replay log of contributions.
Three refinements complete the picture:
- Discounting. Before combining, each contribution is scaled by source independence. The same document re-asserting a fact is discounted so heavily it barely moves the needle; a genuinely new source combines at strength. No single enthusiastic source can run the belief to the top on its own.
- Negative evidence and anti-edges. Refuting evidence fills the third bucket's dark twin, and the combination rule explicitly measures the conflict between sources instead of averaging it away. If refutation overtakes support, the edge flips to an anti-edge: excluded from search, ranking, and traversal — but never deleted. The graph remembers that someone disagreed, and an auditor can see exactly who.
- Bookkeeping stays out of it. Structural edges — time hierarchies, community membership, provenance links — are definitional, not evidential. They get a fixed weight and are exempt from amplification, so scaffolding never contaminates relevance.

What the weight actually does
Here's the part that makes this more than bookkeeping: the belief weight is the graph's single relevance signal. When retrieval ranks candidates (Part 4), it runs a random walk across the graph in which each edge's belief sets how much ranking mass can flow through it. Well-corroborated edges are wide channels; single-source edges are narrow ones; anti-edges are walls.
Two consequences we care about deeply:
- Recall and precision stop fighting. Weak facts aren't deleted — they stay in the graph (recall) but rank low until corroborated (precision). The graph remembers everything and ranks what it trusts.
- No hand-coded source hierarchy. Nothing in the ranking code says "trust vet notes over books" or "trust the bowl over the tracker." Cross-source corroboration outranks single-source assertion arithmetically. The trust policy is emergent, not configured — which means it keeps working when we add a source we haven't imagined yet.

Applications: what pet parents actually feel
This math surfaces in the product in quiet ways.
- Calibrated language. The assistant hedges in proportion to the belief interval: "Max's appetite is down — his bowl, his vet, and breed norms all point the same way" versus "one reading looked low; too early to call."
- Alerts that earn their ping. Proactive notifications key on corroborated patterns, not single readings — a nudged bowl shouldn't buzz your phone.
- Borrowed knowledge on probation. Facts imported from books or the web enter with modest belief and strengthen only when your pet's data corroborates them. General knowledge informs; it doesn't overrule.
Where this fits at Hoomanely
Hoomanely's devices — the smart feeding bowl, the wearable tracker — give us something rare in pet care: continuous, honest measurement. But measurement only becomes advice when you can say how sure you are. The evidence-weighting layer is Hoomanely's answer to that: it's what lets our AI companion tell a pet parent not just what it thinks, but how strongly — and show the receipts. Trust is the product; this is its unit of account.
Key takeaways
- Facts carry three-bucket evidence — supports, refutes, can't-tell — so unknown and false are never confused.
- Belief and plausibility bracket each fact; the interval's width is the system's honesty about uncertainty.
- Independent corroboration compounds (noisy-OR); repetition is discounted; contradiction creates anti-edges that are excluded from answers but never erased.
- The belief weight is the single relevance signal driving ranking — no hand-tuned source hierarchies, no score blending.
- Product behaviors — hedging, alert thresholds, probationary imported knowledge — fall out of the math instead of being special-cased.
Next in the series → Part 4: Answering Pet Health Questions by Walking the Graph — where belief weights meet random walks, and answers come with citations.