From 47c1289ff658a5aec71635d79ffe30bb29a07876 Mon Sep 17 00:00:00 2001 From: Yann Herklotz Date: Thu, 11 May 2023 19:38:03 +0100 Subject: Add content --- content/zettel/3c3g.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 content/zettel/3c3g.md (limited to 'content/zettel/3c3g.md') diff --git a/content/zettel/3c3g.md b/content/zettel/3c3g.md new file mode 100644 index 0000000..00c2775 --- /dev/null +++ b/content/zettel/3c3g.md @@ -0,0 +1,25 @@ ++++ +title = "Defining the abstract language for symbolic evaluation" +author = "Yann Herklotz" +tags = [] +categories = [] +backlinks = ["3c3f"] +forwardlinks = ["1b8", "3c3h", "3c3g1"] +zettelid = "3c3g" ++++ + +To perform symbolic evaluation, we need to define a language that will +syntactically produce equivalent programs if translated from RTLBlock or +RTLPar if the schedule is correct. The language is represented as a +tree, where each register maps to it's symbolic representation, that +being the entry register by default. The difficulty comes because of the +introduction of predicates because of the use of hyperblocks ([\#1b8]). + +The main idea of this abstract language is that the symbolic expressions +that are assigned to each of the registers needs to be self-contained, +and contain the full expression that will be assigned to the register. +Especially with symbolic instructions, one therefore have to make the +decision whether to have recursive predicated expressions, or linear +predicated expressions. + + [\#1b8]: /zettel/1b8 -- cgit