summaryrefslogtreecommitdiffstats
path: root/content/zettel/3c3g3.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/zettel/3c3g3.md')
-rw-r--r--content/zettel/3c3g3.md20
1 files changed, 20 insertions, 0 deletions
diff --git a/content/zettel/3c3g3.md b/content/zettel/3c3g3.md
new file mode 100644
index 0000000..bc08fd7
--- /dev/null
+++ b/content/zettel/3c3g3.md
@@ -0,0 +1,20 @@
++++
+title = "Combining linear predicated expressions"
+author = "Yann Herklotz"
+tags = []
+categories = []
+backlinks = ["3c3g2"]
+forwardlinks = ["3c3g4"]
+zettelid = "3c3g3"
++++
+
+$$ P_{1} \otimes P_{2} \equiv \texttt{map } (\lambda ((p_{1}, e_{1}), (p_{2},e_{2})) . (p_{1} \land p_{2}, f\ e_{1}\ e_{2}))\ P_{1} \times P_{2} $$
+
+The expressions are then constructed using a function which updates the
+symbolic expressions assigned for each resource. This is done using
+multiple primitives which act on predicated types, which are made up of
+a list of pairs of predicates and the element of that type. The first
+important primitive is multiplication of two predicated types, which is
+implemented as performing a cartesian multiplication between the
+predicated types in the two lists, anding the two predicates and joining
+the two types of each list using a function.