modules

geometor.lemoine

GEOMETOR Lemoine: Digital Scriptorium Codex of Émile Lemoine’s Géométrographie (1902).

Submodules

Attributes

CODEX_UNITS

TRACK_SUFFIXES

__version__

Classes

ConcordanceEntry

Single canonical construction benchmark across Lemoine, Euclid, Mascheroni, and Steiner.

InstrumentLocus

Minimal-instrument counterpart locus and constructive method (Mascheroni or Steiner).

LemoineApparatus

Loaded scholarly apparatus and dual minimal-instrument concordance.

OpCount

Exact Lemoine Géométrographie operation-count vector and derived invariants.

Functions

compile_apparatus_rst([repo_root]) → list[pathlib.Path]

Compile concordance.rst, bibliography.rst, persons.rst, and glossary.rst and mirror JSON apparatus.

mirror_apparatus_json([repo_root]) → list[pathlib.Path]

Mirror persons.json, citations.json, and glossary.json to resources/.

verify_codex_tracks([repo_root]) → list[str]

Verify 4-track synchronization, :layout: book metadata, .. folio:: markers, SVGs, and zero embedded Python.

apparatus_slug(raw_key) → str

Normalize an apparatus key to the photon_platform.publish cross-reference slug.

default_repo_root() → pathlib.Path

Return the root directory of the geometor/lemoine repository.

load_apparatus([repo_root]) → LemoineApparatus

Load concordance.json, persons.json, citations.json, glossary.json, and sources_manifest.json.

verify_concordance([apparatus]) → list[str]

Validate all concordance entries, operation counts, unit references, and apparatus dictionaries.

verify_sources_manifest([repo_root]) → list[str]

Verify SHA-256 digests and non-empty witness files listed in sources_manifest.json.

configure_local_intersphinx(intersphinx_mapping, ...) → None

Bind local objects.inv files across GEOMETOR sister repositories and drop unreachable remote-only targets.

register_french_book_track() → None

Extend photon_platform.publish.book to recognize <stem>-fr French tracks.

Package Contents

geometor.lemoine.compile_apparatus_rst(repo_root: pathlib.Path | None = None) → list[pathlib.Path]

Compile concordance.rst, bibliography.rst, persons.rst, and glossary.rst and mirror JSON apparatus.

geometor.lemoine.mirror_apparatus_json(repo_root: pathlib.Path | None = None) → list[pathlib.Path]

Mirror persons.json, citations.json, and glossary.json to resources/.

geometor.lemoine.verify_codex_tracks(repo_root: pathlib.Path | None = None) → list[str]

Verify 4-track synchronization, :layout: book metadata, .. folio:: markers, SVGs, and zero embedded Python.

geometor.lemoine.CODEX_UNITS: tuple[tuple[str, str], ...] = (('unit-1-operations', 'Unit I: Historical Genesis, Methodological Criteria & The Five...
geometor.lemoine.TRACK_SUFFIXES: tuple[str, ...] = ('en', 'fr', 'summary', 'notes')
class geometor.lemoine.ConcordanceEntry

Single canonical construction benchmark across Lemoine, Euclid, Mascheroni, and Steiner.

id: str
problem_number: str
title_en: str
title_fr: str
unit_id: str
folio_page: str
euclid_ref: str
elements_ref: str
etc_ref: str | None
pappus_ref: str | None
classical_ops: OpCount
lemoine_ops: OpCount
mascheroni: InstrumentLocus
steiner: InstrumentLocus
notes: str
classmethod from_dict(data: dict[str, Any]) → ConcordanceEntry

Parse a concordance entry from concordance.json.

property delta_s: int

Operations saved by lemoine_ops relative to classical_ops (S_classical - S_lemoine).

property delta_e: int

Exactitude reduction achieved by lemoine_ops relative to classical_ops.

class geometor.lemoine.InstrumentLocus

Minimal-instrument counterpart locus and constructive method (Mascheroni or Steiner).

locus: str
method: str
classmethod from_dict(data: dict[str, Any]) → InstrumentLocus

Instantiate an InstrumentLocus from a JSON mapping.

class geometor.lemoine.LemoineApparatus

Loaded scholarly apparatus and dual minimal-instrument concordance.

metadata: dict[str, Any]
entries: tuple[ConcordanceEntry, ...]
persons: dict[str, dict[str, str]]
citations: dict[str, dict[str, str]]
glossary: dict[str, dict[str, str]]
sources_manifest: dict[str, Any]
class geometor.lemoine.OpCount

Exact Lemoine Géométrographie operation-count vector and derived invariants.

r1: int
r2: int
c1: int
c2: int
c3: int
s: int
e: int
lines: int
circles: int
symbol: str
classmethod from_dict(data: dict[str, Any]) → OpCount

Instantiate an OpCount from a JSON mapping.

validate(label: str = '') → list[str]

Verify Lemoine’s four fundamental algebraic identities on this operation symbol.

geometor.lemoine.apparatus_slug(raw_key: str) → str

Normalize an apparatus key to the photon_platform.publish cross-reference slug.

geometor.lemoine.default_repo_root() → pathlib.Path

Return the root directory of the geometor/lemoine repository.

geometor.lemoine.load_apparatus(repo_root: pathlib.Path | None = None) → LemoineApparatus

Load concordance.json, persons.json, citations.json, glossary.json, and sources_manifest.json.

geometor.lemoine.verify_concordance(apparatus: LemoineApparatus | None = None) → list[str]

Validate all concordance entries, operation counts, unit references, and apparatus dictionaries.

geometor.lemoine.verify_sources_manifest(repo_root: pathlib.Path | None = None) → list[str]

Verify SHA-256 digests and non-empty witness files listed in sources_manifest.json.

geometor.lemoine.configure_local_intersphinx(intersphinx_mapping: dict[str, Any], project_root: pathlib.Path) → None

Bind local objects.inv files across GEOMETOR sister repositories and drop unreachable remote-only targets.

geometor.lemoine.register_french_book_track() → None

Extend photon_platform.publish.book to recognize <stem>-fr French tracks.

geometor.lemoine.__version__ = '0.1.0'