FStarLang / FStarLang/FStar

Antiquotations broken badly

Open
#3,192 0 comments 0 reactions 1 assignee Claimed by @mtzguido View on GitHub
Dominant language
F*
Stars
3.1k
Forks
266
Avg merge
21h 1m
Merged PRs (30d)
54

Description

```fstar
module VerifiedTransform

open FStar.Tactics.V2
open FStar.Reflection.Typing

let t_unit = `()

let mk_eq2 (ty t1 t2 : term) : Tot term =
(`squash (eq2 #(`#ty) (`#t1) (`#t2)))

let valid (g:env) (phi:term) : prop =
squash (typing g t_unit (E_Total, mk_squash phi))

let test (g t0 t1 t2 ty : _) =
assume (valid g (mk_eq2 ty t0 t1));
assert (valid g (mk_eq2 ty t0 t2));
()
```
The last test should not succeed. My guess is that somehow the SMT thinks that these two terms (`mk_eq2 ty t0 t1` and `mk_eq2 ty t0 t2`) are equal, but clearly they are not.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.