Zulip Chat Archive

Stream: Is there code for X?

Topic: Arrow on relations


Joachim Breitner (May 08 2024 at 22:05):

I am playing around with program verification proofs in the refinement style. I believe I have seen a rather elegant way of expressing how abstract and concrete types and operations relate using an arrow on relations, something of type

Rel a a' -> Rel b b' -> Rel (a -> b) (a' -> b')

Do we have something like this? Possibly even with an API or even tactics to automate refinement proofs (possibly also known as transfer and lifting)?

Kyle Miller (May 08 2024 at 22:56):

Is it docs#Relator.LiftFun ?

Joachim Breitner (May 09 2024 at 06:24):

Yes it is! No API around it though. I'll play around with it once the weather is worse :-)


Last updated: May 02 2025 at 03:31 UTC