caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Drup <drupyog+caml@zoho.com>
To: Kenneth Adam Miller <kennethadammiller@gmail.com>,  caml-list@inria.fr
Subject: Re: [Caml-list] Mathematical Expression Library
Date: Fri, 03 Apr 2015 00:18:37 +0200	[thread overview]
Message-ID: <551DC03D.7050905@zoho.com> (raw)
In-Reply-To: <CAK7rcp_CT-meuKnqmgeNE-Gj6t4iR+_N829TZibHm7DbX6sh_A@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1525 bytes --]


> Can you also explain in more depth your justification of Z3 doing 
> expression simplification on my behalf for anything submitted? That 
> was also my guess, but I didn't have that substantiated before my 
> colleagues, so I wanted to be thorough.
Knowledge of Z3, I guess ? It calls the simplification function (which 
is exposed as Z3.Expr.simplify in the ml-ng bindings) before solving. 
It's a bit more complicated when in the so-called "interactive" mode but 
still doing it. Note that the function is still useful when printing the 
formula for debugging purposes.

>
>     Shape?? I don't know what you mean.
>
I mean that, for a solver like Z3, two encodings of the same problem can 
result in different results (between UNSAT and UNKNOWN, in particular) 
and can result, and that's more sneaky, in completely different 
performance profiles. Solvers (and Z3 in particular) uses heuristics to 
know which branches to solve first so it's rather guess-y.

You mostly notice that when trying them though, it's rather pointless to 
try to guess in advance, since it's very implementation-sensible.

>
>     In any case, my plan was to use OCamlgraph and some hash-consing
>     to construct correspondingly equivalent semantics, then reason
>     about it in a distributed fashion.
>
If you are looking to encode an SSA control flow graph in Z3's SMT, I 
have the code to do that. I could extract it and get it into shape. It's 
based on llvm's IR, but It should be fairly reusable. Tell me if you are 
interested.



[-- Attachment #2: Type: text/html, Size: 2945 bytes --]

  parent reply	other threads:[~2015-04-02 22:18 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-02 17:16 Kenneth Adam Miller
2015-04-02 19:36 ` Ashish Agarwal
2015-04-02 19:47   ` Kenneth Adam Miller
2015-04-02 19:57     ` Ashish Agarwal
2015-04-02 20:05       ` Kenneth Adam Miller
2015-04-02 20:14         ` Ashish Agarwal
2015-04-02 20:19           ` Ivan Gotovchits
2015-04-02 20:21             ` Kenneth Adam Miller
2015-04-02 21:41     ` Drup
     [not found]       ` <CAK7rcp_yb_gb4uziNkDHMBZFSCt_om85JWZ8p_bi94eDpB1AgA@mail.gmail.com>
     [not found]         ` <CAK7rcp_CT-meuKnqmgeNE-Gj6t4iR+_N829TZibHm7DbX6sh_A@mail.gmail.com>
2015-04-02 22:18           ` Drup [this message]
2015-04-07  6:37 ` Markus Weißmann
2015-04-07 14:16   ` Kenneth Adam Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=551DC03D.7050905@zoho.com \
    --to=drupyog+caml@zoho.com \
    --cc=caml-list@inria.fr \
    --cc=kennethadammiller@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).