PTO-TILE-MODEL-SHAPE-ROWS-COLUMNS
PTO-TILE-MODEL-SHAPE-ROWS-COLUMNSASL pseudocode
The complete ASL owner is shown directly below.
// PTO-UNIT: {"id":"PTO-TILE-MODEL-SHAPE-ROWS-COLUMNS","surface":"tile","classification":["model","shape","rows-columns"],"depends_on":["PTO-TILE-MODEL-STATE-DESCRIPTORS"]}// Architectural Tile dimensions use exact powers of two. This bounded form// covers every 16-bit dimension value without relying on implementation// integer bitwise operators.pure func IsNonzeroPowerOfTwo(value: integer {0..65535}) => booleanbegin if value == 0 then return FALSE; end; var candidate: integer = 1; for exponent = 0 to 15 do if value == candidate then return TRUE; end; candidate = candidate * 2; end; return FALSE;end;
// TSize is a per-PE byte capacity. Physical rows are descriptor state derived// exactly from that capacity, the physical column count, and the element type.// Zero means that no legal 16-bit row count exists for the supplied shape.pure func DerivedTileRows(capacity_bytes: integer {0..262144}, columns: integer {0..65535}, data_type: TileDataType) => integer {0..65535}begin if capacity_bytes == 0 || !IsNonzeroPowerOfTwo(columns) then return 0; end; let capacity_bits: integer = capacity_bytes * 8; let row_bits: integer = columns * TileElementBits(data_type); if row_bits == 0 || capacity_bits MOD row_bits != 0 then return 0; end; let rows: integer = capacity_bits DIVRM row_bits; if rows == 0 || rows > 65535 then return 0; end; return rows as integer {0..65535};end;
pure func TileShapeMatchesCapacity(capacity_bytes: integer {0..262144}, rows: integer {0..65535}, columns: integer {0..65535}, data_type: TileDataType) => booleanbegin let derived_rows = DerivedTileRows(capacity_bytes, columns, data_type); return derived_rows != 0 && rows == derived_rows;end;
Architecture behavior
This internal model unit is documented through its normative ASL/NDF owners and validation evidence; it has no reader-guide migration target.
NDF clauses
Bodies come from owning ASL. Dragging or buttons change only this page-session view order.
No NDF clause is attached to this unit.
Evidence index
6 matching entries
Executable evidence1
PTO-TILE-MODEL-SHAPE-ROWS-COLUMNS compiles as an independent normative unit
- surfaceTILE
- ownerPTO-TILE-MODEL-SHAPE-ROWS-COLUMNS
- categorySTATIC-INVARIANT
- case001
Show exact test source
Sources and references
- Complete stable ID
PTO-AVS-TILE-MODEL-SHAPE-ROWS-COLUMNS-STATIC-001- Path
tests/asl/tile/model/shape/rows-columns/tile-static-rows-columns-contract-001.asl- Kind / role
- static-invariant
- Pass condition
- the complete model and this unit's static invariant compile
- SHA-256
017f429c92517b10d7d8236a98ba2dddb5f05c705efd5c394a7ccf1b2ba62850
Commit-scoped evidence5
spec/evidence/release-traceability-readiness.json · closed
PTO-EVIDENCE-RELEASE-TRACEABILITYSources and references
- Complete stable ID
PTO-EVIDENCE-RELEASE-TRACEABILITY- Path
spec/evidence/release-traceability-readiness.json- Kind / role
- ASL/NDF/documentation/AVS traceability
- SHA-256
c7327021d39dc67ac5564bc55073b3870a397d79ac8d9648284d56e33bc14a3e
spec/evidence/instruction-contract-closure.json · closed
PTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSURESources and references
- Complete stable ID
PTO-EVIDENCE-INSTRUCTION-CONTRACT-CLOSURE- Path
spec/evidence/instruction-contract-closure.json- Kind / role
- mnemonic and encoding contract closure
- SHA-256
3ef2bb62421c79dff8fa77a1c7983923b523244b8090812883ef81286ca8106a
spec/evidence/architecture-readiness.json · open
PTO-EVIDENCE-ARCHITECTURE-READINESSSources and references
- Complete stable ID
PTO-EVIDENCE-ARCHITECTURE-READINESS- Path
spec/evidence/architecture-readiness.json- Kind / role
- architecture maturity and blockers
- SHA-256
4b0b85199101251bea744e0f3591cc31906909dc80d5ab651c417a936036a004
spec/evidence/release-gate-readiness.json · ready-for-exact-head-verification
PTO-EVIDENCE-RELEASE-GATE-READINESSSources and references
- Complete stable ID
PTO-EVIDENCE-RELEASE-GATE-READINESS- Path
spec/evidence/release-gate-readiness.json- Kind / role
- exact-head gate readiness
- SHA-256
a0f4d2b6920c08981ea55fd8ef820708a40d4feb5402c5150e8e9ab532d84ce0
spec/release-manifest.json · draft
PTO-EVIDENCE-RELEASE-MANIFESTSources and references
- Complete stable ID
PTO-EVIDENCE-RELEASE-MANIFEST- Path
spec/release-manifest.json- Kind / role
- release content and encoding fingerprints
- SHA-256
1a64c109ed7a90351c41e2a418b3c0ebaf8ad975838986d2101385186b85c0d8
Unit metadata
Open 4 generated metadata fields
Open generated traceability record
{
"classification": [
"model",
"shape",
"rows-columns"
],
"documentation": "docs/tile/model/shape/rows-columns.md",
"id": "PTO-TILE-MODEL-SHAPE-ROWS-COLUMNS",
"mnemonic": null,
"readiness_subjects": [],
"semantic_tests": [],
"source": "asl/tile/model/shape/rows-columns.asl",
"surface": "tile",
"tests": [
"PTO-AVS-TILE-MODEL-SHAPE-ROWS-COLUMNS-STATIC-001"
]
}Sources and release identity
Show commit, paths, hashes, version, and canonical owners
- Release
0.58.5· Release candidate- Commit
7dc8b7e5b121d2b2499a2273bebff29e2cd86812- Original ASL
- asl/tile/model/shape/rows-columns.asl
- ASL SHA-256
b88e329ffc836c8df374dbb848df723f6cd78710c2f5b631a2646b07952a8c11- Generated documentation
- docs/tile/model/shape/rows-columns.md · embedded in this page
- Documentation SHA-256
de9f5a01121d40c47313aa3f622a642573ec75730ae34d51dead89459c5532e5
Exact owners
- ASL PTO-TILE-MODEL-SHAPE-ROWS-COLUMNS
asl/tile/model/shape/rows-columns.asl