Zulip Chat Archive

Stream: new members

Topic: How to return a proof in a product.


Julian Sutherland (Dec 09 2021 at 16:23):

I have a function that returns some finset which I want to relate to one of the functions inputs:

evalStatement :
     ... {vars : finset Identifier}, ...  Σ vars' : finset Identifier, vars  vars' × ...
...

However, prod is of type Type u → Type v → Type (max u v), and therefore I cannot pass to it an element of type Prop. Is there some standard functor in Lean for lifting a Prop to Type 0?

Huỳnh Trần Khanh (Dec 09 2021 at 16:26):

(deleted)

Kevin Buzzard (Dec 09 2021 at 16:27):

plift?

Yakov Pechersky (Dec 09 2021 at 16:27):

pprod will accept proofs

Julian Sutherland (Dec 09 2021 at 16:33):

@Kevin Buzzard @Yakov Pechersky Both work for my use case! Thanks to you both! :)

Eric Wieser (Dec 09 2021 at 17:01):

Is it possible that instead of sigma you want subtype there?

Eric Wieser (Dec 09 2021 at 17:02):

{ vars' : finset Identifier // vars  vars'  ... }

Julian Sutherland (Dec 09 2021 at 19:21):

That might be a better way of doing it, thank you :) I'll give it a try.


Last updated: Dec 20 2023 at 11:08 UTC