summaryrefslogtreecommitdiffstats
path: root/verilog_notes.tex
diff options
context:
space:
mode:
authorJohn Wickerson <j.wickerson@imperial.ac.uk>2020-06-29 21:15:59 +0000
committeroverleaf <overleaf@localhost>2020-06-30 09:21:03 +0000
commitbed99c1cc05568adf748e633153f4f072e79f52b (patch)
treee5a87f66e13fca13e419f2c508bb43e336b5414f /verilog_notes.tex
parentaf9e95f99d412e3c113ce93ed22bf2e67f4b5202 (diff)
downloadoopsla21_fvhls-bed99c1cc05568adf748e633153f4f072e79f52b.tar.gz
oopsla21_fvhls-bed99c1cc05568adf748e633153f4f072e79f52b.zip
Update on Overleaf.
Diffstat (limited to 'verilog_notes.tex')
-rw-r--r--verilog_notes.tex5
1 files changed, 0 insertions, 5 deletions
diff --git a/verilog_notes.tex b/verilog_notes.tex
index 99f7e24..b28b04f 100644
--- a/verilog_notes.tex
+++ b/verilog_notes.tex
@@ -1,8 +1,3 @@
-\JW{stmtntrun has four parameters, and if I read the rules correctly, it looks like the fourth parameter is uniquely determined by the first three. So, you could consider presenting stmntrun simply as a recursive definition, e.g. `stmntrun f s Vskip = s', `stmntrun f s0 (Vseq st1 st2) = stmntrun f (stmntrun f s0 st1) st2', and so on. That might (\emph{might}) be easier to read than the inference rule format.}
-\YH{It works well for Seq and Skip, but I think that CaseMatch and CaseNoMatch, or even if statements will be a bit clunky? We would have to use case statements in the function to do different things
-based on what they evaluate to. For case I think that would end up being a three way choice. I'll try it out though and see how nice it is.}
-\JP{I suppose this would essentially be an ``interpreter'' style semantics but we can prove equivalence pretty easily.}
-\YH{To add to that, I used to have both in the Coq code, but commented the recursive definition out, and now only have the inductive definition, which is basically what I copy pasted here.} \JW{Fair enough. Whatever you think ends up being the easiest to read and understand, really. There's something to be said for staying close to the Coq definitions anyway.} \YH{I have added more rules, we can always switch from one to the other now. One more thing I noticed though is that recursive definitions will need an \texttt{option} type.} \JW{Oh, then my suggestion of `stmntrun f s0 (Vseq st1 st2) = stmntrun f (stmntrun f s0 st1) st2' is a bit ill-typed then, unless the second parameter becomes option-typed too. Maybe the inference rules are better overall then.} \YH{Ah yes, I actually didn't even notice that, it would need the do notation, just like the implementation in Coq, so it may be easier to just use the inference rules.}