Repository navigation
A generic phrase becomes a name, and a name is a bridge #770
Description
The entity panel for NVIDIA lists six names: NVIDIA, NVIDIA CORPORATION, NVDA, company,
the registrant, the company. The first three are names. The last three are not, and the
contract already says so.
prior-work item 6: a thing is named only by a proper name or a fixed
term that means the same in any document; a role or a generic phrase whose referent the passage
decides is described, scoped to its document and never merged by string. the registrant is
whoever filed the document. the company is whoever the paragraph is about.
It has already bridged two companies
In one e2e base, the company is a known_as name of both NVIDIA and SB Energy. A name is
the recall bridge and the key identity evidence will merge on (0041), so a generic phrase invites
exactly the merge that must never happen. Counts across the bases on hand:
| name | bases where it appears | entities claiming it |
|---|---|---|
the company |
4 | NVIDIA, SB Energy |
registrant / the registrant |
3 | NVIDIA, NVIDIA CORPORATION |
company |
1 | NVIDIA |
Why nothing catches it
Two server checks guard names: name_not_in_text (the name, or its quote, occurs in the chunk) and
name_claimed_by_another (no other entity in this document already claims the string). A generic
phrase passes both: it is written in the passage, and within one document it really does refer to
one company.
What a fix has to avoid
A word list. The shape checks look at structure, never vocabulary, and most lowercase names in these
bases are legitimate: free cash flow, non-GAAP gross margin, inline XBRL, safe harbor are
fixed terms that mean the same in any document, which is what item 6 admits on purpose. The gate is
a term gate, not a proper-name gate.
The distinguishing property is not the string, it is that the referent is decided by the passage.
Two directions worth measuring before either is built:
- Ask the contract for it. The model already separates a described thing from a named one
(Extraction reads only the open graph #736); the extraction contract could say that a phrase whose referent the passage fixes is a
description, and the statement keeps it in the qualifier rather than as a name. - Refuse the name when the entity's own class word is the name.
the companynaming an
organization,the registrantnaming an organization: the name adds nothing the class does not
already say. This is structural against the ontology rather than against a word list, but it
needs measuring on a base where a class word is a real name.
Not this
The same base holds a second entity literally called NVIDIA CORPORATION, separate from NVIDIA.
That is the same company split across documents, which is expected until identity evidence lands
(0044 cut 4). It is not this bug.
Smaller and related: a possessive reaches known_as too (NVIDIA's, NVIDIA Corporation's).
Activity
WaylandYang commentedon Sep 19, 2026
Measured direction 2 before anyone builds it, and it is dead. Twice over.
The entities carrying these names usually have no class. An open-layer entity gets one only when
its kind word binds, and
the companyarrives long before that. Across three bases, of the namedentities that do carry a class, the count whose name equals their own class word is:
Where a class does exist, the strings do not meet. In one base NVIDIA is an
Organizationandholds the name
the company. The class word is "Organization"; the name is "company". Matching themneeds a synonym table, which is the word list this project does not write.
So the gate has to come from the contract (direction 1): the model is what knows that
the registrantis an anaphor andfree cash flowis a term. That also matches how the distinction isalready drawn for a described thing that has no name (#736).