FStarLang/FStar

Ghost to Pure promotion doesn't seem to work with conditionals

Open

#610 opened on Aug 12, 2016

View on GitHub
 (3 comments) (0 reactions) (1 assignee)F* (258 forks)auto 404
good first issuekind/bug

Repository metrics

Stars
 (3,068 stars)
PR merge metrics
 (PR metrics pending)

Description

module Test

assume val f : int -> GTot bool

let works (unit) : Tot int = 
  let _ = 
     let y = f 0 in 
     assert (y ==> 0=0);
     assert (not y ==> 1=1) in
  0

let fails (unit) : Tot int = 
  let _ = 
     let y = f 0 in 
     if y
     then assert (0=0)
     else assert (1=1) in
  0

Contributor guide