Skip to content

Algebra.Bundles.SemiringWithoutOne fails to export setoid? #1917

Closed
@jamesmckinna

Description

@jamesmckinna

More specifically, Algebra.Bundles.Semiring does indeed export all of its corresponding substructures (down to setoid derivable via Algebra.Structures), while Algebra.Bundles.SemiringWithoutOne appears not to. Not quite sure how to fix this, but will update if/when I do... with a minimum (non-)working example.

EDITED: See the two Test files at Algebra.Properties.Semiring{WithoutOne} on this branch now minimised.

UPDATE: the problem seems similar to that described/solved in issue #1159 / PR #1174, and I think I have a solution, but I'm conscious of being out of my depth as to the arcane define/public re-export structure of the Algebra.* hierarchy, so reluctant to issue a PR about this... Which raises a separate question: how 'high' (=fewest operations, axiomatic properties) in the Structures (and hence Properties.BundleX.OperationY) hierarchy do we want certain things to live: eg distributivity of _*_ over sum, defined in #1462, placed it as a property of Semirings; @uzytkownik 's original contribution (from a year earlier) under #1287 placed it under SemiringWithoutOne... and AFAICT, it doesn't even need that much structure, only that of the theory pullback (which has no name) of SemiringWithoutOne and SemiringWithoutAnnihilatingZero. In pursuit of #1287, I'd be happy for everything to live under properties of Semiring, and leave the appropriate weakening of structure to subsequent refactoring... but I know that there are strong views about the ambient guiding principle of 'be no less general than you absolutely can', and I thought that this was worth flagging.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions