Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
generated/
*.pdf
*.aux
*.log
*.out
*.toc
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Build pipeline: DocBook 5.2 XML → HTML5 and LaTeX
# TeX/PDF are derived outputs; XML is the canonical source.
#
# Requirements:
# xsltproc (libxslt)
# xmllint (libxml2)
# pdflatex (texlive)
# jing (RELAX NG validator, optional)

SRCS := $(wildcard src/0*.xml)
HTML_OUTS := $(patsubst src/%.xml,generated/%.html,$(SRCS))
TEX_OUTS := $(patsubst src/%.xml,generated/%.tex,$(SRCS))

.PHONY: all html latex validate validate-rnc clean

all: validate html latex

# ---------------------------------------------------------------
# Validation against DocBook 5.2 RELAX NG

validate: $(SRCS)
@for f in $(SRCS); do \
echo "Validating $$f ..."; \
xmllint --noout --xinclude \
--relaxng https://docbook.org/xml/5.2/rng/docbook.rng "$$f" && \
echo " OK: $$f"; \
done

# Optional: validate finding sections against custom RNC schema (requires jing)
validate-rnc: src/02-critical-review.xml schema/critical-review.rnc
jing -c schema/critical-review.rnc src/02-critical-review.xml

# ---------------------------------------------------------------
# HTML5 generation

html: $(HTML_OUTS)

generated/%.html: src/%.xml xsl/html5.xsl | generated
xsltproc --xinclude xsl/html5.xsl $< > $@

# ---------------------------------------------------------------
# LaTeX generation

latex: $(TEX_OUTS)

generated/%.tex: src/%.xml xsl/latex.xsl | generated
xsltproc --xinclude xsl/latex.xsl $< > $@

# ---------------------------------------------------------------
# PDF from LaTeX (two-pass for TOC and references)

generated/%.pdf: generated/%.tex | generated
cd generated && pdflatex -interaction=nonstopmode $(notdir $<)
cd generated && pdflatex -interaction=nonstopmode $(notdir $<)

# ---------------------------------------------------------------
# Utility

generated:
mkdir -p generated

clean:
rm -f generated/*.html generated/*.tex generated/*.pdf
rm -f generated/*.aux generated/*.log generated/*.out generated/*.toc
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# Principled Agent Architectures: Critical Review and Repository Audit

Adversarially verified critical review of "Principled Agent Architectures: A Neuro-Symbolic
Blueprint Beyond Large Language Models," with a 7-repository relevance audit across the
metavacua GitHub portfolio.

**Deep research provenance:** 105 agents · 1,307 tool uses · 2,247,194 subagent tokens · 2026-06-23

## Contents

```
src/
00-metadata.xml Dublin Core + Schema.org metadata (XIncluded by articles)
01-original-paper.xml Full NSAM paper encoded as DocBook 5.2 XML
02-critical-review.xml 6 verified findings, 11 refuted claims, 4 open questions
03-repository-audit.xml 7-repo relevance audit with cross-repo synthesis
bibliography.bib 23 BibTeX sources

xsl/
html5.xsl DocBook → HTML5 with DC meta tags + Schema.org JSON-LD
latex.xsl DocBook → LaTeX (article class, longtable, booktabs)

schema/
critical-review.rnc RELAX NG Compact schema extending DocBook 5.2

scratch/
formulas.md Curry-Howard table, NSAM typing judgments, benchmark tables
notes.md Session notes, citation gaps, open questions, portfolio diagram

generated/ (git-ignored) HTML5 and LaTeX outputs
```

## Building

```bash
# Validate XML against DocBook 5.2 RELAX NG
make validate

# Generate HTML5
make html

# Generate LaTeX
make latex

# Both
make all
```

Requirements: `xsltproc` (libxslt), `xmllint` (libxml2), `pdflatex` (optional, for PDF).

## Key Findings

| Finding | Verdict |
|---------|---------|
| Logic-LM 39.2% figure lacks dataset/model context | Confirmed with caveats |
| Mamba linear scaling valid; 5x throughput unsupported | Split |
| FNet 80% speedup accurate; 92–97% GLUE retention contested | Split |
| Curry-Howard for agent planning anticipated by Proof-Carrying Plans (PPDP 2020) | Confirmed |
| Scallop/A-NeSI claims accurate but require qualification | Confirmed with caveats |
| PyReason features confirmed; "exact yet scalable" vs. peers unsupported | Split |

## Repository Audit Summary

| Repository | Relevance | Role in NSAM Architecture |
|------------|-----------|--------------------------|
| metavacua/Theory | HIGH | Primary placement |
| metavacua/verumorphism | HIGH | **Symbolic reasoning core** (HDL calculus + REST API) |
| metavacua/CategoricalReasoner | MEDIUM-HIGH | Curry-Howard theory chapters |
| metavacua/drstrangegoo | MEDIUM-HIGH | Proof-search oracle candidate (sequoia_engine PR#4) |
| metavacua/subclass | MEDIUM-HIGH | Live Curry-Howard implementation (Proof\<L,R\> phantom types) |
| metavacua/larql-to-sparql | MEDIUM | **Neural substrate** (vindex + knowledge/ semantic grounding) |
| metavacua/GeodesicLangModel | LOW | Adjacent framework (footnote only) |

**Key insight:** verumorphism (symbolic half) + larql-to-sparql (neural half) already implement
both sides of the NSAM architecture — they simply are not yet wired together. The NSAM blueprint
motivates building that integration.

## License

AGPL-3.0-or-later

## Standards

- [DocBook 5.2](https://docbook.org/specs/docbook-v5.2-csprd01.html) — canonical XML source
- [Dublin Core Terms](https://www.dublincore.org/specifications/dublin-core/dcmi-terms/) — metadata
- [Schema.org ScholarlyArticle](https://schema.org/ScholarlyArticle) — JSON-LD structured data
- [RELAX NG Compact](https://relaxng.org/compact-tutorial-20030326.html) — schema validation
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
# RELAX NG Compact Schema for NSAM Critical Review Documents
# Extends DocBook 5.2 with custom role/condition attributes
# Used to validate src/02-critical-review.xml finding sections

namespace db = "http://docbook.org/ns/docbook"
namespace dc = "http://purl.org/dc/terms/"
namespace schema = "https://schema.org/"
namespace xi = "http://www.w3.org/2001/XInclude"
namespace xlink = "http://www.w3.org/1999/xlink"
namespace local = ""

# ---------------------------------------------------------------
# Custom attribute values

finding-condition =
"confirmed" | "confirmed-with-caveats" | "split"

finding-role =
"finding"

# ---------------------------------------------------------------
# Finding section: a db:section with role="finding" and condition
# These appear inside db:section[@xml:id='cr-findings']

finding-section =
element db:section {
attribute xml:id { xsd:NCName },
attribute role { finding-role },
attribute condition { finding-condition },
element db:title { text },
element db:para { mixed { inline-content* } }+
}

# ---------------------------------------------------------------
# Inline content (used inside para)

inline-content =
element db:emphasis {
attribute role { "bold" }?,
text
}
| element db:link {
attribute xlink:href { xsd:anyURI },
text
}
| element db:code { text }
| text

# ---------------------------------------------------------------
# Ordered and unordered lists

list-item =
element db:listitem {
element db:para { mixed { inline-content* } }
}

ordered-list =
element db:orderedlist {
list-item+
}

unordered-list =
element db:itemizedlist {
list-item+
}

# ---------------------------------------------------------------
# Table structures

table-entry = element db:entry { mixed { inline-content* } }
table-row = element db:row { table-entry+ }
table-head = element db:thead { table-row+ }
table-body = element db:tbody { table-row+ }
table-group = element db:tgroup {
attribute cols { xsd:positiveInteger },
element db:colspec {
attribute colname { text }?,
attribute colwidth { text }?
}*,
table-head?,
table-body
}
informal-table = element db:informaltable { table-group }

# ---------------------------------------------------------------
# Section content: paragraphs, lists, tables, subsections

section-content =
element db:para { mixed { inline-content* } }
| ordered-list
| unordered-list
| informal-table
| finding-section
| element db:section {
attribute xml:id { xsd:NCName }?,
element db:title { text },
section-content*
}

# ---------------------------------------------------------------
# Metadata block (from XInclude of 00-metadata.xml)

dc-info =
element db:info {
element dc:title { text },
element dc:creator { text },
element dc:subject { text }?,
element dc:description { text }?,
element dc:publisher { text }?,
element dc:date { text },
element dc:type { text }?,
element dc:format { text }?,
element dc:language { text }?,
element dc:rights { text }?,
element dc:source { text }?,
element db:bibliomisc {
attribute role { "schema-org-jsonld" },
text
}?
}

# ---------------------------------------------------------------
# Top-level article

start =
element db:article {
attribute version { "5.2" },
attribute xml:id { xsd:NCName },
attribute xml:lang { "en" },
dc-info,
element db:title { text },
element db:section {
attribute xml:id { xsd:NCName },
element db:title { text },
section-content*
}+
}
Loading