summaryrefslogtreecommitdiffstats
path: root/content/zettel/3c3g.md
blob: 00c2775f47713757158ad2128f712ca33cc36f6d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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