157:. Term graphs are also used as abstract machines capable of modelling chemical and biological computations as well as graphical calculi such as concurrency models. Term graphs can perform automated verification and logical programming since they are well-suited to representing quantified statements in first order logic. Symbolic programming software is another application for term graphs, which are capable of representing and performing computation with abstract algebraic structures such as groups, fields and rings.
150:" is often used when discussing graph rewriting methods for transforming expressions in formal languages. Considered from the point of view of graph grammars, term graphs are not regular graphs, but hypergraphs where an n-ary word will have a particular subgraph in first place, another in second place, and so on, a distinction that does not exist in the usual undirected graphs studied in graph theory.
25:
310:
138:
Abstract syntax trees cannot represent shared subexpressions since each tree node can only have one parent; this simplicity comes at the cost of efficiency due to redundant duplicate computations of identical terms. For this reason term graphs are often used as an
135:. Term graphs are a more powerful form of representation than expression trees because they can represent not only common subexpressions (i.e. they can take the structure of a directed acyclic graph) but also cyclic/recursive subexpressions (cyclic digraphs).
222:
351:
257:
153:
Term graphs are a prominent topic in programming language research since term graph rewriting rules can formally expressing a compiler's
206:
108:
344:
287:
385:
46:
390:
89:
380:
126:
61:
337:
42:
68:
35:
370:
163:
Term graphs are also used in type inference, where the graph structure aids in implementing type unification.
375:
75:
199:
Handbook of Graph
Grammars and Computing by Graph Transformation: applications, languages and tools. Vol. 2
154:
140:
160:
The TERMGRAPH conference focuses entirely on research into term graph rewriting and its applications.
57:
147:
216:
253:
236:
Barendregt; van
Eekelen; Glauert; Kennaway; Plasmeijer; Sleep (1987). "Term graph rewriting".
202:
321:
291:
245:
177:
82:
317:
364:
238:
PARLE Parallel
Architectures and Languages Europe (Lecture Notes in Computer Science)
143:
at a subsequent compilation stage to abstract syntax tree construction via parsing.
172:
131:
290:. In Proc. 1988 ACM conference on LISP and functional programming, pp. 184-197.
24:
249:
309:
125:
is a representation of an expression in a formal language as a generalized
295:
197:
Plump D. (Hartmut Ehrig, G. Engels, Grzegorz
Rozenberg, eds) (1999).
273:
18:
325:
16:
Representation of an expression as a generalized graph
49:. Unsourced material may be challenged and removed.
345:
8:
221:: CS1 maint: multiple names: authors list (
352:
338:
109:Learn how and when to remove this message
189:
214:
240:. Lecture Notes in Computer Science.
7:
306:
304:
47:adding citations to reliable sources
288:Type inference and semi-unification
201:. World Scientific. pp. 9–13.
324:. You can help Knowledge (XXG) by
14:
308:
23:
34:needs additional citations for
1:
407:
303:
286:Fritz Henglein (1988).
250:10.1007/3-540-17945-3_8
320:-related article is a
386:Graph data structures
155:operational semantics
141:intermediate language
391:Formal methods stubs
148:term graph rewriting
43:improve this article
381:Logical expressions
296:10.1145/62678.62701
129:whose vertices are
333:
332:
259:978-3-540-17945-0
119:
118:
111:
93:
398:
354:
347:
340:
312:
305:
298:
284:
278:
277:
274:"TERMGRAPH 2013"
270:
264:
263:
233:
227:
226:
220:
212:
194:
134:
114:
107:
103:
100:
94:
92:
51:
27:
19:
406:
405:
401:
400:
399:
397:
396:
395:
371:Graph rewriting
361:
360:
359:
358:
302:
301:
285:
281:
272:
271:
267:
260:
235:
234:
230:
213:
209:
196:
195:
191:
186:
178:Graph rewriting
169:
130:
115:
104:
98:
95:
52:
50:
40:
28:
17:
12:
11:
5:
404:
402:
394:
393:
388:
383:
378:
376:Formal systems
373:
363:
362:
357:
356:
349:
342:
334:
331:
330:
318:formal methods
313:
300:
299:
279:
265:
258:
228:
207:
188:
187:
185:
182:
181:
180:
175:
168:
165:
117:
116:
31:
29:
22:
15:
13:
10:
9:
6:
4:
3:
2:
403:
392:
389:
387:
384:
382:
379:
377:
374:
372:
369:
368:
366:
355:
350:
348:
343:
341:
336:
335:
329:
327:
323:
319:
314:
311:
307:
297:
293:
289:
283:
280:
275:
269:
266:
261:
255:
251:
247:
243:
239:
232:
229:
224:
218:
210:
208:9789810228842
204:
200:
193:
190:
183:
179:
176:
174:
171:
170:
166:
164:
161:
158:
156:
151:
149:
144:
142:
136:
133:
128:
124:
113:
110:
102:
91:
88:
84:
81:
77:
74:
70:
67:
63:
60: –
59:
55:
54:Find sources:
48:
44:
38:
37:
32:This article
30:
26:
21:
20:
326:expanding it
315:
282:
268:
241:
237:
231:
198:
192:
173:Term (logic)
162:
159:
152:
146:The phrase "
145:
137:
122:
120:
105:
96:
86:
79:
72:
65:
58:"Term graph"
53:
41:Please help
36:verification
33:
244:: 141–158.
365:Categories
184:References
123:term graph
69:newspapers
217:cite book
99:June 2022
167:See also
83:scholar
256:
205:
85:
78:
71:
64:
56:
316:This
132:terms
127:graph
90:JSTOR
76:books
322:stub
254:ISBN
223:link
203:ISBN
62:news
292:doi
246:doi
242:259
45:by
367::
252:.
219:}}
215:{{
121:A
353:e
346:t
339:v
328:.
294::
276:.
262:.
248::
225:)
211:.
112:)
106:(
101:)
97:(
87:·
80:·
73:·
66:·
39:.
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.