Commit graph

122 commits

Author SHA1 Message Date
Adam Chlipala
d3c7a85b49 More cleanup around addition of RuleInduction 2021-03-01 12:15:34 -05:00
Adam Chlipala
890d7610d7 End of RuleInduction book chapter 2021-02-28 21:05:05 -05:00
Adam Chlipala
f1bd394375 Start of RuleInduction book chapter, up through permutations 2021-02-28 18:07:31 -05:00
Adam Chlipala
d3be001671 Update before lecturing on BasicSyntax 2021-02-15 16:58:40 -05:00
Adam Chlipala
b7f248e099 ConcurrentSeparationLogic: stop bothering to choose postconditions for parallel compositions, which can't terminate (addresses #52) 2021-01-03 15:20:26 -05:00
Matthew Dempsky
bd92c1cbb3 Fix typos in operational semantics for "Loop" command
In section 13.3, the type of Loop is defined as:

    Loop : forall a, a -> (a -> cmd (outcome a)) -> cmd a

However, the operational semantics provided in sections 14.1 and 18.1
invoke the loop body function using "Again(i)" (type "outcome a").
They should instead use simply "i" (type "a").

Changing to "f(i)" also matches the StepLoop formalizations in
SeparationLogic.v and ConcurrentSeparationLogic.v, which invoke simply
"body init" (rather than "body (Again init)").
2020-09-24 11:43:41 -07:00
Adam Chlipala
d1ace360eb Parenthetical remarks to characterize in what senses various analysis results are 'most precise' (closes #47) 2020-05-22 17:10:37 -04:00
Adam Chlipala
b8d0cefa6a Consistency of notation for implication (closes #46) 2020-05-11 11:50:09 -04:00
Adam Chlipala
8a87c209f7 Revising before class 2020-05-05 19:26:59 -04:00
Adam Chlipala
5f735225ef Revising before class 2020-04-28 09:40:40 -04:00
Adam Chlipala
eccb504f08
Merge pull request #43 from bkushigian/master
Change overloaded term `S` in section 5.4
2020-04-24 09:29:23 -04:00
bkushigian
22f3238a8a Change overloaded term S in section 5.4 2020-04-20 09:34:30 -07:00
Adam Chlipala
69de20dec8 Revising before class, including with an optimization to the model-checking engine 2020-04-20 11:56:23 -04:00
Adam Chlipala
c607913898 Typo in translation rule 2020-04-15 09:48:24 -04:00
Adam Chlipala
2efec7b61d Typo fix 2020-04-14 11:55:26 -04:00
Adam Chlipala
b632c66f85 More revision before class 2020-04-13 09:27:45 -04:00
Adam Chlipala
477788abaa Missed loop invariant in big-step semantics 2020-04-05 09:30:01 -04:00
Adam Chlipala
b5e1ae0c29 Clarify what linear_arithmetic does these days 2020-03-17 15:50:19 -04:00
Matthew Dempsky
ebcd23ee6c Add missing "O - O = E" abstraction case
This case is implemented by parity_subtract in
AbstractInterpretation.v and is necessary to calculate the "most
precise abstraction."

See also #28, #37.
2020-03-16 12:58:20 -07:00
Adam Chlipala
aace3dfb02 Changes based on feedback from Christopher McNally (mcncm, in #33) 2020-02-16 11:09:31 -05:00
Adam Chlipala
6ea006fccf Truly building with Coq 8.9 again 2020-02-10 13:53:26 -05:00
Adam Chlipala
a0993b537d Revising Interpreters before class 2020-02-09 12:54:33 -05:00
Adam Chlipala
5e0e034263 Bump required Coq version 2020-02-09 12:26:32 -05:00
Adam Chlipala
958906a2e5 Clarify Cartesian-product operator 2020-01-08 14:36:27 -05:00
Adam Chlipala
93ef5add7a Closes #28 2019-03-04 11:28:37 -05:00
Adam Chlipala
ed64e05e38 Closes #27 2019-03-04 11:26:06 -05:00
Ben Sherman
6e1e2b7ab1 Fix typo in book with label for Embeddings chapter 2018-05-25 10:44:08 -04:00
Adam Chlipala
970580d6f9 SessionTypes: LaTeX finished 2018-05-15 15:27:57 -04:00
Adam Chlipala
7ca4318d66 SessionTypes: almost done with LaTeX chapter 2018-05-14 18:09:22 -04:00
Adam Chlipala
b3705cc79e Proofreading MessagesAndRefinement 2018-05-12 13:29:13 -04:00
Adam Chlipala
0f73a3901c Proofreading ConcurrentSeparationLogic 2018-05-08 09:13:06 -04:00
Adam Chlipala
d66c95a54e ProgramDerivation book chapter 2018-05-06 14:20:32 -04:00
Adam Chlipala
5201cdf524 Connecting chapter in LaTeX 2018-05-02 14:13:26 -04:00
Adam Chlipala
b74bc4b248 Proofreading SharedMemory 2018-05-01 19:43:55 -04:00
Adam Chlipala
d5c7b9d7ce Revising HoareLogic 2018-04-17 20:15:08 -04:00
Adam Chlipala
357686800a Proofreading TypesAndMutation 2018-04-08 14:15:51 -04:00
Adam Chlipala
712aacf9de Some ModelChecking improvements 2018-03-04 19:23:36 -05:00
Adam Chlipala
e8c1980257 Working with Coq 8.5pl2 again 2017-11-18 11:45:26 -05:00
Andres Erbsen
2f8adc23a9 11.1: s/smallstep/smallstepo/ to match Coq source
https://github.com/achlipala/frap/blob/master/TypesAndMutation.v#L117 allows new/read/overwrite inside contexts
2017-09-06 12:06:34 -04:00
Adam Chlipala
e4442e6e29 SharedMemory: don't need exponentiation after all 2017-05-14 15:43:21 -04:00
Adam Chlipala
6e76010a86 CompilerCorrectness: explain why we need so many kinds of simulations 2017-05-14 15:23:57 -04:00
Adam Chlipala
1721d678af Backward reference from MessagesAndRefinement to CompilerCorrectness 2017-05-14 15:11:34 -04:00
Adam Chlipala
44a56e7259 SharedMemory: update book text 2017-04-30 22:05:28 -04:00
Adam Chlipala
a6624bdcf2 Typo fix in book 2017-04-18 21:01:12 -04:00
Adam Chlipala
9928399f5c Small typo fix in Chapter 11 2017-04-09 09:40:31 -04:00
Adam Chlipala
e204041ff8 Tiny revisions to LambdaCalculusAndTypeSoundness 2017-04-02 19:18:34 -04:00
Adam Chlipala
5df1caf940 CompilerCorrectness chapter: proofreading 2017-03-19 18:39:05 -04:00
Adam Chlipala
cefe711466 CompilerCorrectness chapter: simulation with multiple matching steps 2017-03-19 18:21:30 -04:00
Adam Chlipala
6c1af44f95 CompilerCorrectness chapter: simulation with skipping, after adding termination as an observable 2017-03-19 18:07:21 -04:00
Adam Chlipala
9974e130f0 CompilerCorrectness chapter: basic simulation and constant folding 2017-03-19 16:36:04 -04:00