Skip to content

The type of a data constructor should *not* have repeated indices unless defined within the scope of with-K #2519

Open
@jamesmckinna

Description

@jamesmckinna

See the discussion on #2504 for a specific instance.

This raises the issue to library level, given the ambient stdlib assumption of cubical-compatible/without-K.

data constructors which exploit repeated occurrences/'non-linearity' are making implicit appeal to reflexivity of (propositional) equality, and that should instead be required as an explicit witness. Specialising the constructor to supply refl as a default witness should be the preferred approach to offering a non-linear constructor. Cf. Data.Nat.Divisibility.Core #2013

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions