Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Variant of FMap where get samples randomly #395

Closed
wants to merge 1 commit into from
Closed

Conversation

chdoc
Copy link
Member

@chdoc chdoc commented Jun 14, 2023

This is a theory I created for the CV2EC project. It is still quite drafty, but I would be happy to get some feedback.

In particular I would be interested to hear what people think of the overloading of membership (e.g. x \in m and (x,y) \in m)

@chdoc chdoc requested review from bgregoir and fdupress June 14, 2023 14:20
@chdoc chdoc self-assigned this Jun 14, 2023
@fdupress
Copy link
Member

I have trouble seeing how this is used. Is this meant to capture CV's find semantics?

I have absolutely no objection to the \in notation—entirely appropriate for a relation. But perhaps opting for a canonical variable name that better reflects the relational (rather than map-like) nature of the mathematical object would be better?

Also, it might be worth having operators that inject maps as relations and projects relations as sets of maps?
These may be useful, for example, when relating one game that uses a proper map to a game that uses a relational map. (Only build those if you see a use case.)

@chdoc
Copy link
Member Author

chdoc commented Jun 16, 2023

I have trouble seeing how this is used. Is this meant to capture CV's find semantics?

Indeed, this was I developed to convert a proof that was carried out using fmap to one that captures CV's find semantics. The goal was to stay as compatible as possible too fmap, regarding both the syntax of programs and the names of lemmas.

I have absolutely no objection to the \in notation—entirely appropriate for a relation.

The point is more that lemmas use both the newly defined \in notation as well as the \in notation for lists inherited from the implementation of the rmap type.

@strub
Copy link
Member

strub commented Apr 5, 2024

This PR is still marked as "draft". What should we do with it?

@fdupress
Copy link
Member

fdupress commented Apr 5, 2024

Is it used anywhere? If yes, and that somewhere is currently maintained, we should probably have at least one release with it. If no, I still do not understand what it does (or if what it does is something we want) and am not willing to push it forward.

@strub
Copy link
Member

strub commented Apr 5, 2024

Hi @chdoc. The theory seems to be pretty ad-hoc and bound to CV2EC. Not sure whether we should integrate it in the standard library.

@chdoc
Copy link
Member Author

chdoc commented Apr 7, 2024

I found it useful when dealing with the sampling semantics of CV. So yes, in that respect it is ad-hoc and bound to CV. If you don't think this is generally useful, feel free to close this.

@strub
Copy link
Member

strub commented Apr 8, 2024

Let's keep it in the cv2ec repo. Thank you.

@strub strub closed this Apr 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants