Skip to content

bridges(tropical): citation-level correspondence appendix (EchoTropical ↔ tropical-resource-typing)#65

Merged
hyperpolymath merged 2 commits into
mainfrom
lane4/tropical-correspondence-2026-05-20
May 20, 2026
Merged

bridges(tropical): citation-level correspondence appendix (EchoTropical ↔ tropical-resource-typing)#65
hyperpolymath merged 2 commits into
mainfrom
lane4/tropical-correspondence-2026-05-20

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Summary

  • New sibling doc docs/echo-types/tropical-correspondence.md recording the first citation-level cross-prover correspondence between proofs/agda/EchoTropical.agda (this repo) and the adjacent hyperpolymath/tropical-resource-typing repo (Isabelle Tropical.thy + Lean4 TropicalSessionTypes.lean).
  • Closes the "Adjacent repo not recently audited" blocker on the Tropical row of cross-repo-bridge-status.md (already noted as a follow-up by sibling PR docs(bridges): refresh cross-repo bridge status; bake in CNO Agda↔Coq↔Lean4 correspondence #64).
  • First alignable theorem pair: Agda ⊕-idem ↔ Isabelle trop_add_idem. Both proved clean (Agda --safe --without-K, Isabelle simp lemma).
  • Research-phase correction: Lean has no named idempotence theorem on tAdd; the closest analog is tropical_grade_le_sequentialTotal as the downstream dioid consumer of add_idem. The Lean cell is therefore for the bare law, with the consumer theorem noted.
  • Carrier divergence (Agda vs Isabelle/Lean lifted carrier with −∞ bottom) recorded as intentional. Adjacent-side multiplicative structure marked unilateral adjacent-side; echo-side Echo/Candidate/bridge headlines marked unilateral Agda-side.
  • Long-game target Tropical_Ordinal_Bridge.thy ↔ echo-types ordinal track firewalled behind Bachmann–Howard per roadmap.md.
  • Citation-level only: no FFI surface between Agda and Isabelle/Lean. Each side carries its own independent proof.

Coordination

Test plan

  • No .agda files touched, so no Agda build is required; sanity check that EchoTropical.agda still parses under LC_ALL=C.UTF-8 agda --safe --without-K -i proofs/agda proofs/agda/EchoTropical.agda (it should, since this PR makes no Agda edits).
  • Visual review of the correspondence table for name-by-name accuracy against the three source files.
  • Confirm no merge conflict with sibling PR docs(bridges): refresh cross-repo bridge status; bake in CNO Agda↔Coq↔Lean4 correspondence #64 (different file).

🤖 Generated with Claude Code

hyperpolymath and others added 2 commits May 20, 2026 14:37
…pical ↔ tropical-resource-typing

Adds `docs/echo-types/tropical-correspondence.md` as a new sibling under
`docs/echo-types/`. Closes the "Adjacent repo not recently audited"
blocker on the Tropical row of `cross-repo-bridge-status.md` (handled
in PR #64): the adjacent repo
(`hyperpolymath/tropical-resource-typing`, locally at
`repos-monorepo/verification-ecosystem/tropical-resource-typing`) has
been audited and the first alignable theorem pair recorded.

Headlines of the appendix:

* First alignable theorem pair: Agda `⊕-idem` (line 30 of
  `proofs/agda/EchoTropical.agda`) ↔ Isabelle `trop_add_idem` (line 73
  of `Tropical.thy`). Both are proved and clean (Agda under
  `--safe --without-K`, Isabelle as a `simp` lemma).
* Lean correction vs research-phase pairing: `add_comm_trop` is NOT
  the idempotence theorem — Lean has no named idempotence theorem on
  `tAdd`. The Lean docstring explicitly flags this and offers
  `tropical_grade_le_sequentialTotal` as the downstream consumer
  (`max a b ≤ a + b` is the dioid consequence of `add_idem`).
* Carrier divergence (Agda `ℕ` vs Isabelle/Lean lifted carrier with
  `−∞` bottom) recorded as intentional, not a defect.
* Bridge headlines (`tropical-non-injective`, `echo0-to-tropical`,
  `distinct-candidates-same-visible-distinct-echo`) marked unilateral
  Agda-only — no `Echo`/`Candidate` type on the adjacent side.
* Adjacent-side `trop_mul`/`tMul`, distributivity, semiring instance
  marked unilateral adjacent-side — Agda bridge needs only additive
  (max) dioid structure.

Alignment is citation-level only — no FFI surface between Agda and
Isabelle/Lean, no shared definition module, no cross-prover extraction
pipeline. Each side carries its own independent proof. Long-game
target `Tropical_Ordinal_Bridge.thy` ↔ echo-types ordinal track is
firewalled behind the Bachmann–Howard milestone per `roadmap.md`.

No `.agda` files touched (Lane 3 owns the `⊕-idem` Smoke pin); no
edit to `cross-repo-bridge-status.md` (sibling PR #64 owns that
update).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@hyperpolymath hyperpolymath merged commit 577444d into main May 20, 2026
7 of 9 checks passed
@hyperpolymath hyperpolymath deleted the lane4/tropical-correspondence-2026-05-20 branch May 20, 2026 13:58
@github-actions
Copy link
Copy Markdown

🔍 Hypatia Security Scan

Findings: 10 issues detected

Severity Count
🔴 Critical 0
🟠 High 5
🟡 Medium 5
View findings
[
  {
    "reason": "No test directory or test files found",
    "type": "no_tests",
    "file": "/home/runner/work/echo-types/echo-types",
    "action": "flag",
    "rule_module": "honest_completion",
    "severity": "high",
    "deduction": 20
  },
  {
    "reason": "Issue in quality.yml",
    "type": "missing_workflow",
    "file": "quality.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Issue in security-policy.yml",
    "type": "missing_workflow",
    "file": "security-policy.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Issue in secret-scanner.yml",
    "type": "missing_workflow",
    "file": "secret-scanner.yml",
    "action": "create",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "Action actions/cache@v4 needs attention",
    "type": "unpinned_action",
    "file": "agda.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "medium"
  },
  {
    "reason": "Action hyperpolymath/standards/.github/workflows/governance-reusable.yml@main needs attention",
    "type": "unpinned_action",
    "file": "governance.yml",
    "action": "pin_sha",
    "rule_module": "workflow_audit",
    "severity": "high"
  },
  {
    "reason": "No dependabot.yml or renovate.json found in echo-types",
    "type": "DependencyUpdate",
    "file": "/home/runner/work/echo-types/echo-types",
    "action": "auto_fix",
    "rule_module": "scorecard",
    "severity": "high",
    "remediation": "Add .github/dependabot.yml or renovate.json configuration.",
    "scorecard_check": "Dependency-Update-Tool"
  },
  {
    "reason": "Nominal-only SAST in echo-types: codeql.yml language matrix contains no language present in the repo and lacks `actions`, so CodeQL records zero results on every commit. Remediation: set the CodeQL matrix to `language: actions`.",
    "type": "StaticAnalysis",
    "file": "/home/runner/work/echo-types/echo-types",
    "action": "auto_fix",
    "rule_module": "scorecard",
    "severity": "medium",
    "remediation": "Add CodeQL or equivalent SAST workflow.",
    "scorecard_check": "SAST"
  },
  {
    "reason": "1 workflow(s) with tag-pinned (not SHA-pinned) actions in echo-types",
    "type": "DependencyPinning",
    "file": "/home/runner/work/echo-types/echo-types",
    "action": "auto_fix",
    "rule_module": "scorecard",
    "severity": "medium",
    "remediation": "Pin GitHub Actions and Docker base images by SHA hash.",
    "scorecard_check": "Pinned-Dependencies"
  },
  {
    "reason": "Repository has 1 non-main remote branch(es). Policy: single main branch only.",
    "type": "GS007",
    "file": ".",
    "action": "delete_remote_branches",
    "rule_module": "git_state",
    "severity": "medium"
  }
]

Powered by Hypatia Neurosymbolic CI/CD Intelligence

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant