Skip to content
This repository was archived by the owner on Jan 27, 2021. It is now read-only.
This repository was archived by the owner on Jan 27, 2021. It is now read-only.

Is it possible to remove precondition checks for unexported actions #64

@MadeByMars

Description

@MadeByMars

I'm trying to implement a complex protocol.

I first made a virtual network to help me to prove my protocol. And then, I introduce the real network and show that the messages in the real network are equivalent to the virtual network. However, When I want to extract the implementation, Ivy complains that function calls to the virtual network may have visible effect.

I found that it is because I have a precondition that the message exists in the virtual network in my proof. Although I don't want to include the virtual network in my implementation, Ivy still generates these functions and checks these preconditions at the run time. I'm wondering if it is possible to remove the precondition checks for these internal actions, as we have already proved it.

Also, I'm wondering if there is any way to bypass it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions