Zulip Chat Archive

Stream: new members

Topic: Use `structure`or `class` as a `Prop`


Han Han (Mar 25 2025 at 16:51):

Now I often encounter the following problem: I want to use a structure or class as a proposition. For example, I want to formalize that an AddMonoidHom is not a RingHom. One possible solution is to write ¬ (∃ f : R →+* R, f.toAddMonoidHom = g). However, this feels a bit weird to me. How should I generally handle cases where I want to use a structure or class as a proposition?

Han Han (Mar 25 2025 at 17:01):

If there is no general method, could someone please provide a typical example to help me gain some experience?

Kevin Buzzard (Mar 25 2025 at 17:03):

What you write doesn't seem to me like a weird way of expressing what you want.

Aaron Liu (Mar 25 2025 at 17:04):

Maybe you'll find some examples in Counterexamples

Han Han (Mar 25 2025 at 17:07):

I think the example seems weird because I constantly have to convert between f and g. I’m looking for a more convenient way to formalize this.

Han Han (Mar 25 2025 at 17:08):

Kevin Buzzard said:

What you write doesn't seem to me like a weird way of expressing what you want.

I think the example seems weird because I constantly have to convert between f and g. I’m looking for a more convenient way to formalize this.

Han Han (Mar 25 2025 at 17:09):

Aaron Liu said:

Maybe you'll find some examples in Counterexamples

Thanks for your advice. That is a good idea.

Matt Diamond (Mar 25 2025 at 23:32):

I think it's worth adding that "this structure/class can/can't exist" is often expressed using docs#Nonempty and docs#IsEmpty


Last updated: May 02 2025 at 03:31 UTC