Skip to content

Commit

Permalink
Say 'parameter expression' instead of using undefined term 'parametric'
Browse files Browse the repository at this point in the history
  • Loading branch information
henrikt-ma committed Nov 22, 2020
1 parent e76a5e6 commit 7dc7ffd
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 13 deletions.
4 changes: 1 addition & 3 deletions chapters/connectors.tex
Original file line number Diff line number Diff line change
Expand Up @@ -571,9 +571,7 @@ \section{Restrictions of Connections and Connectors}\label{restrictions-of-conne

\begin{itemize}
\item
The connect-equations (and the special functions for overdetermined
connectors) can only be used in equations and shall not be used inside
if-equations with non-parametric condition, or in when-equations.
The connect-equations (and the special functions for overdetermined connectors) can only be used in equations, and shall not be used inside if-equations with conditions that are not parameter expressions, or in when-equations.
\begin{nonnormative}
For-equations always have parameter expressions for the array expression.
\end{nonnormative}
Expand Down
6 changes: 4 additions & 2 deletions chapters/statemachines.tex
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ \section{Transitions}\label{transitions}
\end{tabular}
\end{center}

The \lstinline!transition! and \lstinline!initialState! equations can only be used in equations and cannot be used inside if-equations with non-parametric condition, or in when-equations.
The \lstinline!transition! and \lstinline!initialState! equations can only be used in equations, and cannot be used inside if-equations with conditions that are not parameter expressions, or in when-equations.

The operators listed below are used to query the status of the state machine.
\begin{center}
Expand All @@ -89,7 +89,9 @@ \section{Transitions}\label{transitions}
immediate=$\mathit{imm}$, reset=$\mathit{reset}$, synchronize=$\mathit{synch}$, priority=$\mathit{prio}$)
\end{lstlisting}\end{synopsis}
\begin{semantics}
Arguments $\mathit{from}$ and $\mathit{to}$ are block instances, and $\mathit{condition}$ is a \lstinline!Boolean! argument. The optional arguments \lstinline!immediate!, \lstinline!reset!, and \lstinline!synchronize! are of type \lstinline!Boolean!, have parametric variability and a default of \lstinline!true!, \lstinline!true!, \lstinline!false! respectively. The optional argument \lstinline!priority! is of type \lstinline!Integer!, has parametric variability and a default of 1.
Arguments $\mathit{from}$ and $\mathit{to}$ are block instances, and $\mathit{condition}$ is a \lstinline!Boolean! argument.
The optional arguments \lstinline!immediate!, \lstinline!reset!, and \lstinline!synchronize! are of type \lstinline!Boolean!, have parameter variability and a default of \lstinline!true!, \lstinline!true!, \lstinline!false! respectively.
The optional argument \lstinline!priority! is of type \lstinline!Integer!, has parameter variability and a default of 1.

This operator defines a transition from instance $\mathit{from}$ to instance $\mathit{to}$. The $\mathit{from}$ and $\mathit{to}$ instances become states of a state machine. The transition fires when $\mathit{condition} = \text{\lstinline!true!}$ if $\mathit{imm} = \text{\lstinline!true!}$ (this is called an \firstuse{immediate transition}) or \lstinline!previous($\mathit{condition}$)! when $\mathit{imm} = \text{\lstinline!false!}$ (this is called a \firstuse{delayed transition}). Argument \lstinline!priority! defines the priority of firing when several transitions could fire. In this case the transition with the smallest value of \lstinline!priority! fires. It is required that $\mathit{prio} \geq 1$ and that for all transitions from the same state, the priorities are different. If $\mathit{reset} = \text{\lstinline!true!}$, the states of the target state are reinitialized, i.e.\ state machines are restarted in initial state and state variables are reset to their start values. If $\mathit{synch} = \text{\lstinline!true!}$, any transition is disabled until all state machines of the from-state have reached final states, i.e.\ states without outgoing transitions. For the precise details about firing a transition, see \cref{state-machine-semantics}.
\end{semantics}
Expand Down
13 changes: 5 additions & 8 deletions chapters/synchronous.tex
Original file line number Diff line number Diff line change
Expand Up @@ -474,11 +474,8 @@ \section{Clock Constructors}\label{clock-constructors}
\end{enumerate}

Clock variables can be used in a restricted form of expressions.
Generally, every expression switching between clock variables must have
parametric variability (in order that clock analysis can be
performed when translating a model).
Thus subscripts on Clock-variables and conditions of if-then-else switching between Clock-variables must
be parameter expressions, and there are similar restrictions for sub-clock conversion operators \cref{sub-clock-conversion-operators}.
Generally, every expression switching between clock variables must have parameter variability (in order that clock analysis can be performed when translating a model).
Thus subscripts on Clock-variables and conditions of if-then-else switching between Clock-variables must be parameter expressions, and there are similar restrictions for sub-clock conversion operators \cref{sub-clock-conversion-operators}.
Otherwise, the following expressions are allowed:
\begin{itemize}
\item
Expand Down Expand Up @@ -1015,8 +1012,8 @@ \subsection{Sub-clock Partitioning}\label{sub-clock-partitioning}
\subsection{Sub-clock Inferencing}\label{sub-clock-inferencing}

For each base-clock partition, the base interval needs to be determined and for each sub-clock partition, the sub-sampling factors and shift need to be determined.
For each sub-clock partition, the interval might be rational or \lstinline!Real! type and known or parametric or being unspecified.
The sub-clock partition intervals are constrained by \lstinline!subSample! and \lstinline!superSample! factors which might be known (or parametric) or unspecified, as well as by \lstinline!shiftSample!, \lstinline!shiftCounter! and \lstinline!resolution!, or \lstinline!backSample!, \lstinline!backCounter! and \lstinline!resolution!.
For each sub-clock partition, the interval might be rational or \lstinline!Real! type and known or parameter expression or being unspecified. % This sentence is impossible to parse!
The sub-clock partition intervals are constrained by \lstinline!subSample! and \lstinline!superSample! factors which might be known (or parameter expression) or unspecified, as well as by \lstinline!shiftSample!, \lstinline!shiftCounter! and \lstinline!resolution!, or \lstinline!backSample!, \lstinline!backCounter! and \lstinline!resolution!.
This constraint set is used to solve for all intervals and sub-sampling factors and shift of the sub-clock partitions.
The model is erroneous if no solution exist.

Expand Down Expand Up @@ -1383,7 +1380,7 @@ \section{Other Operators}\label{other-operators}
\begin{semantics}
This operator returns the interval between the previous and present tick of the clock of the expression, in which this operator is called. The optional argument $u$ is only used for clock inference, see \cref{clock-partitioning}. At the first tick of the clock the following is returned:
\begin{enumerate}
\item If the specified clock interval is parametric, this value is returned.
\item If the specified clock interval is a parameter expression, this value is returned.
\item Otherwise the start value of the variable specifying the interval is returned.
\item For an event clock the additional \lstinline!startInterval! argument to the event clock constructor is returned.
\end{enumerate}
Expand Down

0 comments on commit 7dc7ffd

Please sign in to comment.