Skip to content
Snippets Groups Projects
Commit a2e43250 authored by Ralf Jung's avatar Ralf Jung
Browse files

Merge branch 'fix-doc-links' into 'master'

Fix broken code links in docs

See merge request iris/iris!1047
parents f2800611 c727bce5
No related branches found
No related tags found
No related merge requests found
...@@ -5,7 +5,7 @@ If you really want to, you can also avoid having to type unicode characters by ...@@ -5,7 +5,7 @@ If you really want to, you can also avoid having to type unicode characters by
importing `iris.bi.ascii`. That enables parsing-only ASCII alternatives to many importing `iris.bi.ascii`. That enables parsing-only ASCII alternatives to many
unicode notations. (Feel free to report an issue when you notice that a notation unicode notations. (Feel free to report an issue when you notice that a notation
is missing.) The easiest way to learn the ASCII syntax is to is missing.) The easiest way to learn the ASCII syntax is to
[read this file](/iris/bi/ascii.v). [read this file](../iris/bi/ascii.v).
Note however that this will make your code harder to read and work on for Iris Note however that this will make your code harder to read and work on for Iris
developers that are used to our default unicode notation---generally, our developers that are used to our default unicode notation---generally, our
recommendation is to use the unicode syntax whenever possible. In particular, recommendation is to use the unicode syntax whenever possible. In particular,
......
...@@ -128,7 +128,7 @@ all of the redexes reduced.) ...@@ -128,7 +128,7 @@ all of the redexes reduced.)
Sometimes, it is useful to define a derived notion in HeapLang that involves Sometimes, it is useful to define a derived notion in HeapLang that involves
thunks. For example, the parallel composition `e1 ||| e2` is definable in thunks. For example, the parallel composition `e1 ||| e2` is definable in
HeapLang, but that requires thunking `e1` and `e2` before passing them to HeapLang, but that requires thunking `e1` and `e2` before passing them to
`par`. (This is defined in [`par.v`](theories/heap_lang/lib/par.v).) However, `par`. (This is defined in [`par.v`](../iris_heap_lang/lib/par.v).) However,
this is somewhat subtle because of the distinction between expression lambdas this is somewhat subtle because of the distinction between expression lambdas
and value lambdas. and value lambdas.
......
...@@ -21,7 +21,7 @@ pervasively. These are defined in dedicated sections in this manual. ...@@ -21,7 +21,7 @@ pervasively. These are defined in dedicated sections in this manual.
Many of the tactics below apply to more goals than described in this document Many of the tactics below apply to more goals than described in this document
since the behavior of these tactics can be tuned via instances of the type since the behavior of these tactics can be tuned via instances of the type
classes in the file [proofmode/classes](iris/proofmode/classes.v). Most notably, many classes in the file [proofmode/classes](../iris/proofmode/classes.v). Most notably, many
of the tactics can be applied when the connective to be introduced or to be eliminated of the tactics can be applied when the connective to be introduced or to be eliminated
appears under a later, an update modality, or in the conclusion of a appears under a later, an update modality, or in the conclusion of a
weakest precondition. weakest precondition.
......
...@@ -99,7 +99,7 @@ To obtain a closed Iris proof, i.e., a proof that does not make assumptions like ...@@ -99,7 +99,7 @@ To obtain a closed Iris proof, i.e., a proof that does not make assumptions like
`inG`, you have to assemble a list of functors of all the involved modules, `inG`, you have to assemble a list of functors of all the involved modules,
and if your proof relies on some singleton (most do, at least indirectly; also and if your proof relies on some singleton (most do, at least indirectly; also
see the next section), you have to call the respective initialization or see the next section), you have to call the respective initialization or
adequacy lemma. [For example](tests/one_shot.v): adequacy lemma. [For example](../tests/one_shot.v):
```coq ```coq
Section client. Section client.
Context `{!heapGS Σ, !one_shotG Σ, !spawnG Σ}. Context `{!heapGS Σ, !one_shotG Σ, !spawnG Σ}.
...@@ -142,9 +142,9 @@ would be incompatible with each other. ...@@ -142,9 +142,9 @@ would be incompatible with each other.
The `gen_heapGpreS` typeclass (without the singleton data) is relevant for The `gen_heapGpreS` typeclass (without the singleton data) is relevant for
initialization, i.e., to create an instance of `gen_heapGS`. This is happening as initialization, i.e., to create an instance of `gen_heapGS`. This is happening as
part of [`heap_adequacy`](iris_heap_lang/adequacy.v) using the part of [`heap_adequacy`](../iris_heap_lang/adequacy.v) using the
initialization lemma for `gen_heapGS` from initialization lemma for `gen_heapGS` from
[`gen_heap_init`](iris/base_logic/lib/gen_heap.v): [`gen_heap_init`](../iris/base_logic/lib/gen_heap.v):
```coq ```coq
Lemma gen_heap_init `{gen_heapGpreS L V Σ} σ : Lemma gen_heap_init `{gen_heapGpreS L V Σ} σ :
(|==> _ : gen_heapGS L V Σ, gen_heap_ctx σ)%I. (|==> _ : gen_heapGS L V Σ, gen_heap_ctx σ)%I.
...@@ -232,9 +232,9 @@ F (X,X⁻) := gmap K (agree (nat * ▶ X)) ...@@ -232,9 +232,9 @@ F (X,X⁻) := gmap K (agree (nat * ▶ X))
To make it convenient to construct such functors and prove their contractivity, To make it convenient to construct such functors and prove their contractivity,
we provide a number of abstractions: we provide a number of abstractions:
- [`oFunctor`](iris/algebra/ofe.v): functors from COFEs to OFEs. - [`oFunctor`](../iris/algebra/ofe.v): functors from COFEs to OFEs.
- [`rFunctor`](iris/algebra/cmra.v): functors from COFEs to cameras. - [`rFunctor`](../iris/algebra/cmra.v): functors from COFEs to cameras.
- [`urFunctor`](iris/algebra/cmra.v): functors from COFEs to unital - [`urFunctor`](../iris/algebra/cmra.v): functors from COFEs to unital
cameras. cameras.
Besides, there are the classes `oFunctorContractive`, `rFunctorContractive`, and Besides, there are the classes `oFunctorContractive`, `rFunctorContractive`, and
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment