Skip to content

Instances in DoubleTT#1246

Draft
KevinDCarlson wants to merge 33 commits into
mainfrom
instances_tt
Draft

Instances in DoubleTT#1246
KevinDCarlson wants to merge 33 commits into
mainfrom
instances_tt

Conversation

@KevinDCarlson

@KevinDCarlson KevinDCarlson commented May 5, 2026

Copy link
Copy Markdown
Collaborator

Here are some instances in doublett. Runnable for text elaborator, notebook elaborator TBD pending #1257

@epatters epatters added enhancement New feature or request core Rust core for categorical logic and general computation labels May 5, 2026
@epatters epatters marked this pull request as draft May 5, 2026 15:42
@KevinDCarlson KevinDCarlson changed the title Instances tt RFC: Instances in DoubleTT May 8, 2026
@KevinDCarlson KevinDCarlson changed the title RFC: Instances in DoubleTT RFC-0009: Instances in DoubleTT May 9, 2026
@KevinDCarlson KevinDCarlson changed the title RFC-0009: Instances in DoubleTT Instances in DoubleTT May 11, 2026
weight(we.e) := w,
weight(wf.e) := w
]

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As the syntax suggests, an instance is now simply a term of the type of which it's an instance. We can declare generators explicitly with lists of new names, or by importing them from another instance (semantically, getting an instance map in from there.) We can specify mappings explicitly, as below, but the mappings need not be total, and are in that case implicitly filled out via the dopf property.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, this changed a bit again: we needed to keep the standard Cons terms of dependent records for, primarily, internal reasons. These correspond semantically to tight transformations of models. I've thus reintroduced a new keyword for instance-type terms. These are expected to always be closed, thus corresponding to lax loose transformations from the point into a model--the open analogue doesn't seem obviously useful to me. So the semantics at the moment is in the category of instances of models, fibered over the category of models and tight transformations.

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

Labels

core Rust core for categorical logic and general computation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants