mirror of
https://github.com/harvard-edge/cs249r_book.git
synced 2026-05-06 09:38:33 -05:00
- Refactored table.yml to expand grid from 15 to 18 columns, perfectly aligning elements to their block columns without visual impurity.
- Updated schema validation and SVG layout logic to handle 18-col bounds.
- Re-generated periodic_table_hero.svg with the new clean grid layout.
- Switched 'Constraint-Driven Lowering Heuristic' to 'Constraint-Driven Structural Search' to emphasize generative design over compiler semantics.
- Fixed paper.tex title to remove academic jargon ('Generative Design Space').
- Styled code listings with custom 'elegant' light-theme formatting.
- Added Mamba compound visual figure to the limitations section.
- Added 'Predict the Paper' table to validate the heuristic empirically.
- Generated and included 'Nomenclature' table of all 90 elements.
- Re-added 'Framework Tax' limitation acknowledging software bottlenecks.
121 lines
4.1 KiB
JSON
121 lines
4.1 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "https://mlsysbook.ai/periodic-table/table.schema.json",
|
|
"title": "Periodic Table of ML Systems",
|
|
"description": "Single source of truth for the Periodic Table of ML Systems. Consumed by the standalone HTML emitter and the StaffML React app. Cross-reference invariants (bond resolution, formula resolution, no cell collisions) are enforced by the validator script in addition to this schema.",
|
|
"type": "object",
|
|
"required": ["version", "title", "blocks", "rows", "elements", "compounds"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"version": { "type": "string", "pattern": "^\\d+\\.\\d+(\\.\\d+)?$" },
|
|
"title": { "type": "string" },
|
|
"subtitle": { "type": "string" },
|
|
|
|
"blocks": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["key", "name", "sub", "color", "cols"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"key": { "type": "string", "enum": ["R", "C", "X", "K", "M"] },
|
|
"name": { "type": "string" },
|
|
"sub": { "type": "string" },
|
|
"color": { "type": "string", "pattern": "^#[0-9a-fA-F]{6}$" },
|
|
"cols": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": { "type": "integer", "minimum": 1, "maximum": 18 }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
"rows": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["index", "key", "name"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"index": { "type": "integer", "minimum": 1, "maximum": 8 },
|
|
"key": { "type": "string", "pattern": "^[a-z_]+$" },
|
|
"name": { "type": "string" },
|
|
"tagline": { "type": "string" }
|
|
}
|
|
}
|
|
},
|
|
|
|
"elements": {
|
|
"type": "array",
|
|
"minItems": 1,
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["id", "sym", "name", "block", "row", "col", "desc", "bonds", "why"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"id": { "type": "integer", "minimum": 1 },
|
|
"sym": { "type": "string", "pattern": "^[A-Z][a-z]$" },
|
|
"name": { "type": "string", "minLength": 1 },
|
|
"block": { "type": "string", "enum": ["R", "C", "X", "K", "M"] },
|
|
"row": { "type": "integer", "minimum": 1, "maximum": 8 },
|
|
"col": { "type": "integer", "minimum": 1, "maximum": 18 },
|
|
"year": { "type": ["string", "null"] },
|
|
"desc": { "type": "string", "minLength": 1 },
|
|
"bonds": {
|
|
"type": "array",
|
|
"items": { "type": "string", "pattern": "^[A-Z][a-z]$" }
|
|
},
|
|
"why": { "type": "string", "minLength": 1 }
|
|
}
|
|
}
|
|
},
|
|
|
|
"compounds": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["section", "items"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"section": { "type": "string" },
|
|
"hint": { "type": "string" },
|
|
"items": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["name", "formula"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"formula": { "type": "string", "minLength": 1 }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
"known_collisions": {
|
|
"type": "array",
|
|
"description": "Documented intentional symbol collisions. Lookup behavior is last-wins; consumers may disambiguate by id or by (row, col).",
|
|
"items": {
|
|
"type": "object",
|
|
"required": ["sym", "ids", "note"],
|
|
"additionalProperties": false,
|
|
"properties": {
|
|
"sym": { "type": "string", "pattern": "^[A-Z][a-z]$" },
|
|
"ids": {
|
|
"type": "array",
|
|
"minItems": 2,
|
|
"items": { "type": "integer", "minimum": 1 }
|
|
},
|
|
"note": { "type": "string" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|