DIRECTORY IO, StructuralComparisonDataStructure; StructuralComparisonOps: CEDAR DEFINITIONS = BEGIN OPEN StructuralComparisonDataStructure; Log: PROC [format: ROPE, v1, v2, v3, v4, v5: IO.Value _ [null[]]]; FlushLog: PROC; WriteColorTable: PROC [colorTable: ColorTable, descriptions: RealGraphDescriptions]; WriteAll: PROC [when: ROPE, descriptions: RealGraphDescriptions, a, b: CellType, oldColorData, curColorData: ColorTable]; VerboseVName: PROC [Vertex] RETURNS [ROPE]; DeleteVertex: PROC [parent: CellType, v: Vertex]; MergeVertices: PROC [parent: CellType, v1, v2: Vertex] RETURNS [merged, doomed: Vertex]; RemoveEdge: PROC [e: Edge]; CompareGraphs: PROC [ descriptions: RealGraphDescriptions, a, b: CellType, GenerateHints: PROC [Consume: PROC [vA, vB: Vertex]], pick, mirrors, mayQuitEarly: BOOL, abort: REF BOOL] RETURNS [equiv, didQuitEarly: BOOL, partition: ColorTable]; DisplayStats: PROC; END. 2StructuralComparisonOps.Mesa Bertrand Serlet June 4, 1986 4:15:42 pm PDT Last tweaked by Mike Spreitzer on October 1, 1987 3:20:19 pm PDT If they're cells, the caller asserts that they are connected identically  i.e., nothing needs to be done but delete the doomed vertex and the edges touching it. Κy– "cedar" style˜code™K™+K™@—K˜KšΟk œœ$˜0K˜šΠbxœœ œ˜,K˜Kšœœ#˜-K˜KšΟnœœ œœ˜BKšŸœœ˜KšŸœœ?˜TKšŸœœœ_˜yKšŸ œœ œœ˜+K˜KšŸ œœ˜1šŸ œœ$œ˜XK™‘—KšŸ œœ ˜K˜šŸ œ˜šœ˜Kšœ$˜$Kšœ˜KšŸ œœŸœœ˜5Kšœœ˜"Kšœœœ˜—Kšœœ˜;—K˜KšŸ œœ˜K˜Kšœ˜——…—”?