AlgebraicJulia / GATlab.jl

GATlab: a computer algebra system based on generalized algebraic theories (GATs)
https://algebraicjulia.github.io/GATlab.jl/
MIT License
21 stars 2 forks source link

TypeCtx as generalization of TypeScope, better @theorymap parsing #110

Closed kris-brown closed 9 months ago

kris-brown commented 9 months ago

TermInCtx and TypeInCtx are made more flexible to take a general context, rather than just a scope. This required making Context take {T, Sig} type parameters.

Previously we had conflicting meanings of idents - one was for broadcasting arguments to ident and the other was listing all the idents in a Context. The latter is now called getidents.

Also theory maps before required some redundancy in the expressions they parsed, this has been improved so that we can write compose(f,g) ⊣ [(a,b,c)::Ob,f::Hom(a,b), g::Hom(b,c)] => compose(g, f) with no explicit RHS context.

codecov[bot] commented 9 months ago

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (a0c5e58) 88.25% compared to head (785ae67) 94.26%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## scope-level-alias #110 +/- ## ===================================================== + Coverage 88.25% 94.26% +6.00% ===================================================== Files 26 27 +1 Lines 1516 1622 +106 ===================================================== + Hits 1338 1529 +191 + Misses 178 93 -85 ``` | [Files](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia) | Coverage Δ | | |---|---|---| | [src/models/SymbolicModels.jl](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia#diff-c3JjL21vZGVscy9TeW1ib2xpY01vZGVscy5qbA==) | `97.36% <100.00%> (ø)` | | | [src/stdlib/models/module.jl](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia#diff-c3JjL3N0ZGxpYi9tb2RlbHMvbW9kdWxlLmps) | `100.00% <ø> (ø)` | | | [src/stdlib/module.jl](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia#diff-c3JjL3N0ZGxpYi9tb2R1bGUuamw=) | `100.00% <ø> (ø)` | | | [src/syntax/Presentations.jl](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia#diff-c3JjL3N5bnRheC9QcmVzZW50YXRpb25zLmps) | `97.61% <ø> (ø)` | | | [src/syntax/module.jl](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia#diff-c3JjL3N5bnRheC9tb2R1bGUuamw=) | `100.00% <ø> (ø)` | | | [src/syntax/TheoryMaps.jl](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia#diff-c3JjL3N5bnRheC9UaGVvcnlNYXBzLmps) | `87.12% <96.25%> (+87.12%)` | :arrow_up: | | [src/syntax/Scopes.jl](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia#diff-c3JjL3N5bnRheC9TY29wZXMuamw=) | `95.48% <79.06%> (-1.05%)` | :arrow_down: | | [src/syntax/GATs.jl](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia#diff-c3JjL3N5bnRheC9HQVRzLmps) | `90.64% <78.37%> (+1.93%)` | :arrow_up: | ... and [2 files with indirect coverage changes](https://app.codecov.io/gh/AlgebraicJulia/GATlab.jl/pull/110/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=AlgebraicJulia)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.