Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Submit feedback
    • Contribute to GitLab
  • Sign in
why3
why3
  • Project
    • Project
    • Details
    • Activity
    • Releases
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 59
    • Issues 59
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 7
    • Merge Requests 7
  • Registry
    • Registry
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Commits
  • Issue Boards
  • Why3
  • why3why3
  • Issues
  • #160

Closed
Open
Opened Jul 11, 2018 by DAILLER Sylvain@sdailler
  • Report abuse
  • New issue
Report abuse New issue

Counterexample for one-region record

In new_ide, when a counterexample is given for a type with only one mutable region, the id which is used to refer to a variable of such type is then reused for a variable of its only mutable type. The problem is that the model_trace is not changed. An example of this is (bench/ce/arrays.mlw):

module A

  use import int.Int
  use import array.Array

  let f2 (a:array int) : unit
    requires { a.length >= 2 }
    ensures { a[0] <> a[1] }
  = a[0] <- 42

end

It can be seen because the counterexample is a = (0 => 42...) instead of a.elts = (0 => 42 ....).

Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
No due date
2
Labels
component: counterexample new_ide
Assign labels
  • View project labels
Reference: why3/why3#160