r"""TAV'IEL-CONTRAST -- a thing is understood by what it is NOT. Elan'iel: "one fact of answering a question thoroughly and true understanding is being able to point out clear examples of its opposite, and what it is not. God is a spirit, man is flesh and bone. God is not man, because man is not just a spirit." Contrast draws the EDGE of a definition. "God is a Spirit" (John 4:24) is a claim a hearer can still fill with his own imagining; "a spirit hath not flesh and bones, as ye see me have" (Luke 24:39) closes the door on the wrong picture, and does it in Christ's own words after the resurrection. DISCIPLINE. Every contrast is verse-backed on BOTH sides -- the affirmation and the denial -- and every verse is checked word-for-word against watchman.db by `taviel_verify` before it may be emitted. A contrast with no record is NOT invented: the system simply says less. An opposite asserted without scripture is exactly the failure this module exists to prevent. Shape of a record: subject the thing being defined is what it IS, in the product's own voice is_not what it is NOT -- the wrong picture, named because the distinguishing property that makes the denial true verses_is [(ref, quote)] for the affirmation verses_not [(ref, quote)] for the denial """ from __future__ import annotations CONTRASTS = { "god_is_spirit": { "subject": "what God is", "is": "God is Spirit -- not a thing among things.", "is_not": "He is not a man, and not flesh and bone.", "because": ("a spirit has no flesh and bones; a man is not only spirit, " "so what is true of a man is not therefore true of God"), "verses_is": [ ("John 4:24", "God is a Spirit: and they that worship him must " "worship him in spirit and in truth."), ], "verses_not": [ ("Luke 24:39", "handle me, and see; for a spirit hath not flesh and " "bones, as ye see me have."), ("Numbers 23:19", "God is not a man, that he should lie; neither the " "son of man, that he should repent"), ], }, "god_is_light": { "subject": "God as light", "is": "God is light.", "is_not": "There is no darkness in Him at all -- not a mixture, not a shadow.", "because": "light and darkness are not blended in Him; the denial is absolute", "verses_is": [ ("1 John 1:5", "God is light, and in him is no darkness at all."), ], "verses_not": [ ("1 John 1:5", "in him is no darkness at all"), ], }, "god_is_love": { "subject": "God as love", "is": "God is love.", "is_not": "He is not the author of confusion.", "because": ("love and confusion do not proceed from the same source; " "what sows disorder is not from Him"), "verses_is": [ ("1 John 4:8", "He that loveth not knoweth not God; for God is love."), ], "verses_not": [ ("1 Corinthians 14:33", "For God is not the author of confusion, but " "of peace, as in all churches of the saints."), ], }, "kingdom_within": { "subject": "where the kingdom is", "is": "The kingdom of God is within you.", "is_not": "It does not come by observation, and is not 'lo here' or 'lo there'.", "because": ("what is within is not found by looking outward; a place " "cannot be pointed to when the thing is not in a place"), "verses_is": [ ("Luke 17:21", "behold, the kingdom of God is within you."), ], "verses_not": [ ("Luke 17:21", "Neither shall they say, Lo here! or, lo there!"), ], }, "flesh_and_spirit": { "subject": "flesh and spirit", "is": "That which is born of the Spirit is spirit.", "is_not": "That which is born of the flesh is flesh -- the two are not one kind.", "because": "each begets after its own kind; birth does not cross the two", "verses_is": [ ("John 3:6", "that which is born of the Spirit is spirit."), ], "verses_not": [ ("John 3:6", "That which is born of the flesh is flesh"), ], }, "faith_and_works": { "subject": "faith", "is": "Faith is shown alive by works.", "is_not": "Faith without works is not living faith -- it is dead.", "because": "as a body without the spirit is dead, so is faith without works", "verses_is": [ ("James 2:26", "For as the body without the spirit is dead, so faith " "without works is dead also."), ], "verses_not": [ ("James 2:26", "faith without works is dead also."), ], }, "gods_ways": { "subject": "God's thoughts and ways", "is": "His thoughts and ways are His own.", "is_not": "They are not ours -- He is not a larger version of a man's reasoning.", "because": "the difference is in kind, not only in degree", "verses_is": [ ("Psalms 103:14", "For he knoweth our frame; he remembereth that we " "are dust."), ], "verses_not": [ ("Isaiah 55:8", "For my thoughts are not your thoughts, neither are " "your ways my ways, saith the LORD."), ], }, "man_looks_outward": { "subject": "how God sees a man", "is": "The LORD looketh on the heart.", "is_not": "He does not see as man sees -- not the countenance, not the stature.", "because": "outward appearance is what man can reach; the heart is what God reads", "verses_is": [ ("1 Samuel 16:7", "the LORD looketh on the heart."), ], "verses_not": [ ("1 Samuel 16:7", "Look not on his countenance, or on the height of " "his stature"), ], }, } # question-side triggers -> record key. Deliberately narrow: contrast fires only # where a RECORD exists, never by inference. _TRIGGERS = [ (("what is god", "what god is", "is god a man", "god a spirit", "is god physical", "does god have a body"), "god_is_spirit"), (("god is light", "darkness in god", "is god dark"), "god_is_light"), (("god is love", "is god loving", "author of confusion"), "god_is_love"), (("where is the kingdom", "kingdom of god is", "kingdom of heaven is within", "when will the kingdom"), "kingdom_within"), (("born again", "born of the flesh", "flesh and spirit"), "flesh_and_spirit"), (("faith without works", "is faith enough", "faith alone"), "faith_and_works"), (("god's ways", "gods ways", "why does god think", "god's thoughts"), "gods_ways"), (("does god judge appearance", "looketh on the heart", "outward appearance"), "man_looks_outward"), ] def _verified(pairs): """Keep only (ref, quote) pairs the mechanical checker accepts.""" try: import taviel_verify as TV except Exception: return [] out = [] for ref, quote in pairs: text = TV.verse_of(ref) if text and TV._quote_faithful(quote, text): out.append((ref, quote)) return out def contrast_for(key_or_question): """The verified contrast record, or None. Never invents an opposite.""" rec = CONTRASTS.get(key_or_question) if rec is None: q = " ".join(str(key_or_question).lower().split()) for needles, key in _TRIGGERS: if any(n in q for n in needles): rec = CONTRASTS[key] break if rec is None: return None vis, vnot = _verified(rec["verses_is"]), _verified(rec["verses_not"]) if not vis or not vnot: return None # a half-verified contrast is not a contrast out = dict(rec) out["verses_is"], out["verses_not"] = vis, vnot return out def clause(key_or_question, with_refs=True): """One short paragraph: what it is NOT, and why. Progressive disclosure -- the affirmation has already been given by the caller, so this adds only the edge, never a second full teaching.""" rec = contrast_for(key_or_question) if not rec: return "" ref, quote = rec["verses_not"][0] tail = f' -- "{quote}" ({ref})' if with_refs else "" return f"And what He is not: {rec['is_not']} {rec['because'].capitalize()}{tail}"