Hi Nik,

Thanks for your thoughtful answer. That was what I was looking for.

Best,

Bas

On Fri, Jun 29, 2018 at 5:04 PM, Nikhil Swamy <nsw...@microsoft.com> wrote:
> Hi Bas,
>
> We've made several attempts at formalizing various fragments of F*, none of 
> which establish consistency of the full language (unsurprisingly).
>
> Our most recent attempt is in a paper at POPL 2017: 
> https://www.fstar-lang.org/papers/dm4free/
>
> There, we present a calculus called Explicitly Monadic F* (EMF*) which 
> includes the pure fragment of F*, with dependent types, refinement types and 
> user-defined monadic effects. EMF* excludes many F* features too (especially 
> the following, which are particularly relevant for consistency):
>
> 1. inductive types and pattern matching
> 2. F*'s let-rec primitive (and its semantic termination check)
> 3. a typing rule that supports type conversion based on provable equality
> 4. divergence encapsulated in another effect
> 5. the encoding of F*'s logic to first-order logic provided by an SMT solver
>
> For this limited EMF* calculus, we have a syntactic metatheory proving total 
> correctness of the WP-based program logic we derive for effectful terms. 
> Extending EMF* at least with features 1, 2, and 3 above and studying its 
> consistency would be very interesting ... well, at least to the few of us who 
> work on F*.
>
> That said, the main theorem of this POPL '17 paper is to establish the 
> correctness of a CPS-based transformation to derive WP calculi from 
> definitions of a monad. This is done by a logical relations proof on EMF*.
>
> Other papers have attempted to study some of these other consistency-related 
> features of F* in slightly different settings:
> -- https://www.fstar-lang.org/papers/mumon/  this one includes a proof of 
> normalization of a small calculus ("pico F*") with recursion, refinement 
> types and our termination check
> -- This short paper 
> https://hatt2016.inria.fr/files/2016/06/HaTT_2016_paper_1-5.pdf formalizes a 
> core of F*'s encoding to first-order logic
>
> Aside from all this, there's the question of the correctness of F*'s 
> implementation: of course, F* is under active development and we find, fix 
> and (sadly) introduce correctness bugs from time to time. We hope someday to 
> revisit our work on "self-certification" 
> (https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/popl2012-paper211.pdf)
>   and apply a technique like it to the current implementation of F*.
>
> Hope that helps,
> Nik
>
>> -----Original Message-----
>> From: fstar-club <fstar-club-boun...@lists.gforge.inria.fr> On Behalf Of Bas
>> Spitters via fstar-club
>> Sent: Friday, June 29, 2018 3:30 AM
>> To: fstar-club@lists.gforge.inria.fr
>> Subject: [fstar-club] Consistency of F-star ?
>>
>> What are the current conjectures, thoughts about the consistency/semantics
>> of F*?
>>
>> Could you point me to a paper I should read?
>>
>> Thanks,
>>
>> Bas
>> _______________________________________________
>> fstar-club mailing list
>> fstar-club@lists.gforge.inria.fr
>> https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.gf
>> orge.inria.fr%2Fmailman%2Flistinfo%2Ffstar-
>> club&amp;data=02%7C01%7Cnswamy%40microsoft.com%7C428fa932a4c04
>> d1ce84708d5ddabaec4%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%
>> 7C636658651809180794&amp;sdata=EEKoy3UGxk%2BOKuLGPDTQb%2F0AZ
>> %2FhMKcc7PzI09bvk5Og%3D&amp;reserved=0
_______________________________________________
fstar-club mailing list
fstar-club@lists.gforge.inria.fr
https://lists.gforge.inria.fr/mailman/listinfo/fstar-club

Reply via email to