# Resolution Graphs and Splice Diagrams

- [Introduction](introduction.md)

- [Resolution Graphs](resolution-graphs.md)

  - [Graphs, Vertices and Printing](resolution-graphs.md#graphs-vertices-and-printing)

    - [`g eq h: GrphRes, GrphRes → BoolElt`](resolution-graphs.md#operation-op-eq-grphres-grphres)

    - [`ResolutionGraphVertex(g,i): GrphRes, RngIntElt → GrphResVert`](resolution-graphs.md#function-resolutiongraphvertex-grphres-rngintelt)

    - [`g ! i: GrphRes, RngIntElt → GrphResVert`](resolution-graphs.md#operation-op-grphres-rngintelt)

    - [`Vertex(v): GrphResVert → GrphVert`](resolution-graphs.md#function-vertex-grphresvert)

    - [`ResolutionGraph(v): GrphResVert → GrphRes`](resolution-graphs.md#function-resolutiongraph-grphresvert)

    - [`IsVertex(g,v): GrphRes, GrphResVert → BoolElt`](resolution-graphs.md#function-isvertex-grphres-grphresvert)

    - [`Index(v): GrphResVert → RngIntElt`](resolution-graphs.md#function-index-grphresvert)

    - [`v eq w: GrphResVert, GrphResVert → BoolElt`](resolution-graphs.md#operation-op-eq-grphresvert-grphresvert)

  - [Creation from Curve Singularities](resolution-graphs.md#creation-from-curve-singularities)

    - [`ResolutionGraph(C, p): Sch, Pt → GrphRes`](resolution-graphs.md#function-resolutiongraph-sch-pt)

    - [`ResolutionGraph(C, p): Sch, Pt → GrphRes`](resolution-graphs.md#function-resolutiongraph-sch-pt-2)

    - [`Example: singularity`](resolution-graphs.md#example-ex-6d6d7f)

  - [Creation from Pencils](resolution-graphs.md#creation-from-pencils)

    - [`ResolutionGraph(P): LinearSys → GrphRes`](resolution-graphs.md#function-resolutiongraph-linearsys)

    - [`ResolutionGraph(P,a,b): LinearSys, RngElt, RngElt → GrphRes`](resolution-graphs.md#function-resolutiongraph-linearsys-rngelt-rngelt)

    - [`Example: pencil`](resolution-graphs.md#example-ex-5e0089)

  - [Creation by Hand](resolution-graphs.md#creation-by-hand)

    - [`MakeResolutionGraph(g,s,t): GrphDir, SeqEnum, SeqEnum → GrphRes`](resolution-graphs.md#function-makeresolutiongraph-grphdir-seqenum-seqenum)

    - [`MakeResolutionGraph(g,s): GrphDir, SeqEnum → GrphRes`](resolution-graphs.md#function-makeresolutiongraph-grphdir-seqenum)

    - [`MakeResolutionGraph(N): NwtnPgon → GrphRes`](resolution-graphs.md#function-makeresolutiongraph-nwtnpgon)

    - [`UnderlyingGraph(g): GrphRes → GrphDir`](resolution-graphs.md#function-underlyinggraph-grphres)

  - [Modifying Resolution Graphs](resolution-graphs.md#modifying-resolution-graphs)

    - [`Connect(v,w): GrphResVert, GrphResVert → GrphRes`](resolution-graphs.md#function-connect-grphresvert-grphresvert)

    - [`CalculateCanonicalClass(~g): GrphRes`](resolution-graphs.md#function-calculatecanonicalclass-grphres-ref)

    - [`Disconnect(v,w): GrphResVert, GrphResVert → GrphRes`](resolution-graphs.md#function-disconnect-grphresvert-grphresvert)

    - [`Component(v): GrphResVert → GrphRes`](resolution-graphs.md#function-component-grphresvert)

    - [`CalculateMultiplicities(~g): GrphRes`](resolution-graphs.md#function-calculatemultiplicities-grphres-ref)

    - [`CalculateTransverseIntersections(~g): GrphRes`](resolution-graphs.md#function-calculatetransverseintersections-grphres-ref)

    - [`ModifySelfintersection(~v,n): GrphResVert, RngIntElt`](resolution-graphs.md#function-modifyselfintersection-grphresvert-rngintelt-ref)

    - [`ModifyTransverseIntersection(~v,n): GrphResVert, RngIntElt`](resolution-graphs.md#function-modifytransverseintersection-grphresvert-rngintelt-ref)

  - [Numerical Data Associated to a Graph](resolution-graphs.md#numerical-data-associated-to-a-graph)

    - [`Size(g): GrphRes → RngIntElt`](resolution-graphs.md#function-size-grphres)

    - [`SelfIntersections(g): GrphRes → SeqEnum`](resolution-graphs.md#function-selfintersections-grphres)

    - [`Multiplicities(g): GrphRes → SeqEnum`](resolution-graphs.md#function-multiplicities-grphres)

    - [`CanonicalClass(g): GrphRes → SeqEnum`](resolution-graphs.md#function-canonicalclass-grphres)

    - [`TransverseIntersections(g): GrphRes → SeqEnum`](resolution-graphs.md#function-transverseintersections-grphres)

    - [`GenusContribution(g): GrphRes → RngIntElt`](resolution-graphs.md#function-genuscontribution-grphres)

    - [`CartanMatrix(g): GrphRes → Mtrx`](resolution-graphs.md#function-cartanmatrix-grphres)

    - [`Determinant(g): GrphRes → RngElt`](resolution-graphs.md#function-determinant-grphres)

- [Splice Diagrams](splice-diagrams.md)

  - [Creation of Splice Diagrams](splice-diagrams.md#creation-of-splice-diagrams)

    - [`SpliceDiagram(C,p): Sch, Pt → GrphSpl`](splice-diagrams.md#function-splicediagram-sch-pt)

    - [`RegularSpliceDiagram(P): LinearSys → GrphSpl`](splice-diagrams.md#function-regularsplicediagram-linearsys)

    - [`MakeSpliceDiagram(g,e,a): GrphDir, SeqEnum, SeqEnum → GrphSpl`](splice-diagrams.md#function-makesplicediagram-grphdir-seqenum-seqenum)

    - [`MakeSpliceDiagram(e,l,a): SeqEnum, SeqEnum, SeqEnum → GrphSpl`](splice-diagrams.md#function-makesplicediagram-seqenum-seqenum-seqenum)

    - [`SpliceDiagramVertex(s,i): GrphSpl, RngIntElt → GrphSplVert`](splice-diagrams.md#function-splicediagramvertex-grphspl-rngintelt)

    - [`SpliceDiagram(v): GrphSplVert → GrphSpl`](splice-diagrams.md#function-splicediagram-grphsplvert)

    - [`UnderlyingGraph(s): GrphSpl → GrphDir`](splice-diagrams.md#function-underlyinggraph-grphspl)

    - [`UnderlyingVertex(v): GrphSplVert → GrphVert`](splice-diagrams.md#function-underlyingvertex-grphsplvert)

    - [`Vertex(v): GrphSplVert → GrphVert`](splice-diagrams.md#function-vertex-grphsplvert)

    - [`Vertices(s): GrphSpl → SeqEnum`](splice-diagrams.md#function-vertices-grphspl)

    - [`RootVertex(s): GrphSpl → GrphSplVert`](splice-diagrams.md#function-rootvertex-grphspl)

    - [`Index(v): GrphSplVert → RngIntElt`](splice-diagrams.md#function-index-grphsplvert)

    - [`s eq t: GrphSpl, GrphSpl → BoolElt`](splice-diagrams.md#operation-op-eq-grphspl-grphspl)

    - [`v eq w: GrphSplVert, GrphSplVert → BoolElt`](splice-diagrams.md#operation-op-eq-grphsplvert-grphsplvert)

  - [Numerical Functions of Splice Diagrams](splice-diagrams.md#numerical-functions-of-splice-diagrams)

    - [`EdgeLabels(s): GrphSpl → SeqEnum`](splice-diagrams.md#function-edgelabels-grphspl)

    - [`VertexLabels(s): GrphSpl → SeqEnum`](splice-diagrams.md#function-vertexlabels-grphspl)

    - [`TotalLinking(v): GrphSplVert → RngIntElt`](splice-diagrams.md#function-totallinking-grphsplvert)

    - [`LinkingNumbers(s): GrphSpl → SeqEnum`](splice-diagrams.md#function-linkingnumbers-grphspl)

    - [`Linking(u,v): GrphSplVert, GrphSplVert → RngIntElt`](splice-diagrams.md#function-linking-grphsplvert-grphsplvert)

    - [`EdgeDeterminant(u,v): GrphSplVert, GrphSplVert → RngIntElt`](splice-diagrams.md#function-edgedeterminant-grphsplvert-grphsplvert)

    - [`Valency(v): GrphSplVert → RngIntElt`](splice-diagrams.md#function-valency-grphsplvert)

    - [`IsRegular(s): GrphSpl → BoolElt`](splice-diagrams.md#function-isregular-grphspl)

    - [`IsReduced(s): GrphSpl → BoolElt`](splice-diagrams.md#function-isreduced-grphspl)

    - [`HasIrregularFibres(s): GrphSpl → BoolElt`](splice-diagrams.md#function-hasirregularfibres-grphspl)

    - [`Degree(s): GrphSpl → RngIntElt`](splice-diagrams.md#function-degree-grphspl)

    - [`EulerCharacteristic(s): GrphSpl → RngIntElt`](splice-diagrams.md#function-eulercharacteristic-grphspl)

    - [`Size(s): GrphRes → RngIntElt`](splice-diagrams.md#function-size-grphres-2)

    - [`Arrows(s): GrphRes → SeqEnum`](splice-diagrams.md#function-arrows-grphres)

    - [`VertexPath(u,v): GrphSplVert, GrphSplVert → SeqEnum, SeqEnum`](splice-diagrams.md#function-vertexpath-grphsplvert-grphsplvert)

- [Translation Between Graphs](translation.md)

  - [Splice Diagrams from Resolution Graphs](translation.md#splice-diagrams-from-resolution-graphs)

    - [`SpliceDiagram(g): GrphRes → GrphSpl`](translation.md#function-splicediagram-grphres)

    - [`SpliceDiagram(g,v): GrphRes, GrphResVert → GrphSpl`](translation.md#function-splicediagram-grphres-grphresvert)
