jeannin / zelus

A synchronous language with ODEs
http://zelus.di.ens.fr
Other
0 stars 4 forks source link

Refinement type predicate does not support functions and operators #11

Closed jlvargasme closed 2 years ago

jlvargasme commented 2 years ago

Issue description:

let pi = 3.14159 let y0 : int{ -y0 >= pi} = 4.0

Will compile successfully because (-y0) is interpreted as "42". The dummy value we use when there is no handling.

Action: Implement operator and function application checks inside refinement variable declaration.

jlvargasme commented 2 years ago

Fixed by implementing unary minus