Zulip Chat Archive

Stream: Is there code for X?

Topic: by_contra!


Yury G. Kudryashov (Aug 13 2021 at 11:15):

Do we have a name for by_contra H, push_neg at H?

Kevin Buzzard (Aug 13 2021 at 11:18):

Is it something like contrapose!?

Anne Baanen (Aug 13 2021 at 11:19):

Not really, since contrapose needs an implication. Well, perhaps by { have : true := \<\>, contrapose! this }? :P

Yury G. Kudryashov (Aug 13 2021 at 11:19):

contrapose! needs an assumption.

Anne Baanen (Aug 13 2021 at 11:19):

by_contra is in core, so I don't think we can easily extend it

Yury G. Kudryashov (Aug 13 2021 at 11:24):

Can we extend contrapose! to act like by_contra! if called without arguments? Currently it expects the goal to be an implication in this case.

Yaël Dillies (Aug 13 2021 at 11:26):

Oh yeah, good idea. I wanted something like that a while back.

Patrick Massot (Aug 13 2021 at 12:17):

Having contrapose! acting as by_contra! would be weird. You wouldn't call that a contraposition on paper.

Yury G. Kudryashov (Aug 13 2021 at 13:38):

OK, then we can have by_contra'.

Yury G. Kudryashov (Aug 13 2021 at 13:38):

(though it's the same word)


Last updated: Dec 20 2023 at 11:08 UTC