diff --git a/sections/language.tex b/sections/language.tex index 5ad207a..b2282cd 100644 --- a/sections/language.tex +++ b/sections/language.tex @@ -14,9 +14,10 @@ We say that a formula $f$ evaluates to a value $v$ in the context of a given sta We say that a state $\tuple{C, s}$ is \textit{valid} if each cell's formula evaluates to the cell's value: $$\forall \tuple{id_i, f_i, v_i} \in C\;:\; f_i \mapsto_{\tuple{C,s}} v_i$$ -User \textit{actions} in \langname, transform a state $\tuple{C_1, s_1}$ into a new state $\tuple{C_2, s_2}$. We consider two classes of action: (1) \textit{data actions} that change only the spreadsheet's cells (i.e., for which $s_1 = s_2$), and (2) \textit{structural actions} that alter the spreadsheet's coordinate system. -% +User \textit{actions} in \langname, transform a state $\tuple{C_1, s_1}$ into a new state $\tuple{C_2, s_2}$. % We call the semantics for an action correct if they ensure that if the input to an action is valid, then the output is also valid. +% +We also focus on two classes of action: (1) \textit{data actions} that change only the spreadsheet's cells (i.e., for which $s_1 = s_2$), and (2) \textit{structural actions} that alter the spreadsheet's coordinate system and only modify the spreadsheet's cells to the extent necessary to preserve validity under the new coordinate system. \begin{figure*} \centering