Skip to content

Implement Array-{Read-Write}-Elimination simplifications #11

@Robbepop

Description

@Robbepop

Stevia should handle complex array expressions and thus be able to word-level simplify those together with array abstraction refinement.

To be implemented are:

  1. Array-Read-Elimination: Eliminates ArrayRead expressions by replacing them with appropriate equi-satisfiable local- and root expressions.
  2. Array-Write-Elimination: Eliminates ArrayWrite expressions by replacing them with appropriate equisatisfiable local- and root expressions.

Both simplifications require refinement expressions on the root scope of the input expression which can be refined by lazy insertion similar to how STP handles them via its array abstraction refinement.

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-simplifierTask operating on the stevia_simplifier crate in isolation.B-enhancementAn enhancement or new feature.D-hardA task that is considered to be hard to implement.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions