FORM  4.3
Functions
notation.c File Reference
#include "form3.h"

Go to the source code of this file.

Functions

int NormPolyTerm (PHEAD WORD *term)
 
int ConvertToPoly (PHEAD WORD *term, WORD *outterm, WORD *comlist, WORD par)
 
int LocalConvertToPoly (PHEAD WORD *term, WORD *outterm, WORD startebuf, WORD par)
 
int ConvertFromPoly (PHEAD WORD *term, WORD *outterm, WORD from, WORD to, WORD offset, WORD par)
 
WORD FindSubterm (WORD *subterm)
 
WORD FindLocalSubterm (PHEAD WORD *subterm, WORD startebuf)
 
void PrintSubtermList (int from, int to)
 
void PrintExtraSymbol (int num, WORD *terms, int par)
 
WORD FindSubexpression (WORD *subexpr)
 
int ExtraSymFun (PHEAD WORD *term, WORD level)
 
int PruneExtraSymbols (WORD downto)
 

Detailed Description

Contains the functions that deal with the rewriting and manipulation of expressions/terms in polynomial representation.

Definition in file notation.c.

Function Documentation

◆ LocalConvertToPoly()

int LocalConvertToPoly ( PHEAD WORD *  term,
WORD *  outterm,
WORD  startebuf,
WORD  par 
)

Converts a generic term to polynomial notation in which there are only symbols and brackets. During conversion there will be only symbols. Brackets are stripped. Objects that need 'translation' are put inside a special compiler buffer and represented by a symbol. The numbering of the extra symbols is down from the maximum. In principle there can be a problem when running into the already assigned ones. This uses the FindTree for searching in the global tree and then looks further in the AT.ebufnum. This allows fully parallel processing. Hence we need no locks. Cannot be used in the same module as ConvertToPoly.

Definition at line 510 of file notation.c.