Devarim 4:2 lo tosif. talmudic_engine/src/halt/anchors.pl declares rule_anchor/2 for each of the ten halt names the rule modules can return (avodah_zarah Shemot 20:3, golden_calf 32:4, self_grounding 32:24, shfichut_damim Bereishit 9:6, gilui_arayot Vayikra 18:6, parah_adumah Bamidbar 19:7, carrier_centered Devarim 8:17, chelbenah Shemot 30:34, lo_taaseh_lekha Shemot 20:4, even_vaaven Devarim 25:13), with the L1 Hebrew beside each. VavPipeline.Anchors reads the anchors file and the halt modules the Doorpost hashes, and verifies — inside Doorpost.verify_identity/0, so at readiness — that every halt(<name>, …) is anchored (ANCHOR_MISSING) and every anchored verse exists in L1 (ANCHOR_NOT_IN_L1). A rule without a verse is a rule the system has added. /kodesh/specification_identity lists the anchors; every bedikah and pair response carries `anchors`, the verse of each rule that fired. Tamid §1.1, bishearecha §X. Doorpost a0e81212…. Elixir 577/0 (+9 anchors tests), Prolog bedikah 42/42. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
64 lines
2.7 KiB
Prolog
64 lines
2.7 KiB
Prolog
%% anchors.pl — Every halt rule cites its verse.
|
|
%%
|
|
%% Devarim 4:2: lo tosifu al hadavar asher anochi metzaveh etchem v'lo
|
|
%% tigre'u mimenu — nothing added to the word, nothing taken from it.
|
|
%% bishearecha.md §X: the halt rules are the builder's reading, not the
|
|
%% source; they must not be mistaken for it, and they must stay
|
|
%% checkable against it. A rule without an anchor is a rule the system
|
|
%% has added. So each halt name that any rule in this directory can
|
|
%% return carries the verse it stands on, and the Doorpost
|
|
%% (VavPipeline.Anchors) verifies at startup that every halt name here
|
|
%% is anchored and that every anchored verse exists in L1 — the rules
|
|
%% grounded exactly as the outputs are.
|
|
%%
|
|
%% The verse is the structure the rule reads, not a proof-text for the
|
|
%% matter the rule is applied to. The Hebrew beside each is the L1 text
|
|
%% as read when the anchor was set (2026-10-07).
|
|
%%
|
|
%% rule_anchor(HaltName, verse(Book, Chapter, Verse))
|
|
|
|
:- module(anchors, [
|
|
rule_anchor/2,
|
|
anchored_rules/1
|
|
]).
|
|
|
|
%% Check 1 — authority claimed by the output for itself.
|
|
%% לא יהיה לך אלהים אחרים על פני
|
|
rule_anchor(avodah_zarah, verse(shemot, 20, 3)).
|
|
|
|
%% Check 2 — a claim resting on nothing given: the calf declared from
|
|
%% nothing. ויאמרו אלה אלהיך ישראל
|
|
rule_anchor(golden_calf, verse(shemot, 32, 4)).
|
|
|
|
%% Check 2 — a claim resting on the output itself: "I threw it in the
|
|
%% fire and out came this calf". ואשלכהו באש ויצא העגל הזה
|
|
rule_anchor(self_grounding, verse(shemot, 32, 24)).
|
|
|
|
%% Check 3 — an action against a person. שפך דם האדם
|
|
rule_anchor(shfichut_damim, verse(bereishit, 9, 6)).
|
|
|
|
%% Check 3 — an action that uncovers what may not be touched.
|
|
%% לא תקרבו לגלות ערוה
|
|
rule_anchor(gilui_arayot, verse(vayikra, 18, 6)).
|
|
|
|
%% Check 4 — self-validation: the one who prepares the water of
|
|
%% purification is impure until evening. וטמא הכהן עד הערב
|
|
rule_anchor(parah_adumah, verse(bamidbar, 19, 7)).
|
|
|
|
%% Check 5 — the carrier centred: "my power and the strength of my hand
|
|
%% made me this wealth". כחי ועצם ידי עשה לי את החיל הזה
|
|
rule_anchor(carrier_centered, verse(devarim, 8, 17)).
|
|
|
|
%% Check 6 — the adversarial excluded: galbanum is in the incense.
|
|
%% נטף ושחלת וחלבנה
|
|
rule_anchor(chelbenah, verse(shemot, 30, 34)).
|
|
|
|
%% Check 7 — the frame: the made form. לא תעשה לך פסל וכל תמונה
|
|
rule_anchor(lo_taaseh_lekha, verse(shemot, 20, 4)).
|
|
|
|
%% The paired reading — two stones in one bag. אבן ואבן גדולה וקטנה
|
|
rule_anchor(even_vaaven, verse(devarim, 25, 13)).
|
|
|
|
anchored_rules(Rules) :-
|
|
findall(R, rule_anchor(R, _), Rules).
|