Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril...

26
Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1

Transcript of Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril...

Page 1: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

1

Graph ColouringThe Team :

Aymen DammakSébastien Jagueneau

Florian LajusXavier Loubatier

Cyril RayotMathieu Rey

Mentor :Paul-Yves Gloess

Page 2: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

2

First DefinitionsA graph is a set of vertices linked by edges

A graph

Page 3: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

3

NeighboursA vertex is a neighbour of another vertex if

they are linked by an edge

Page 4: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

4

Colouring NotionsA colour is associated to each vertexA graph is well-coloured if no neighbouring

vertices share the same colour

A well-coloured graph

Page 5: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

5

Degree NotionsThe vertex degree is the number of

neighbours of this vertexThe graph degree is the maximum degree of

its vertices

Page 6: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

The Theorem• Choose randomly a vertex H which has all its neighbours well-coloured• Choose randomly a color C unused by theneighbours of H• Color H with C and graph is still well-coloured

Page 7: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

What is PVS ?PVS : Prototype Verification SystemProof assistant SRI international

Page 8: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

Divide and ConquerType Checking -> TCC : Type Correctness

ConditionCorrections

Definition of degreeGraph non oriented

After correction, 3 TCCs required to be provedColoring_vertex_TCC1Coloring_vertex_TCC2Coloring_TCC5

Page 9: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

9

Proof of coloring_vertex_tcc1Main idea :

nonempty (difference (below (1+degree (R)), image (f, neighbours (R) (t)))

below (1+degree (R)): N+1 colours of the graphimage (f, neighbours (R) (t)): colours of t neighbours

The set of colours used to colour the neighbours of vertex T, can not

include all the graph colours.

Page 10: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

10

Proof of coloring_vertex_tcc1

Graph colours:

Page 11: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

11

Proof of coloring_vertex_tcc1

Colours of vertex V neighbours:

There is always a colour left for vertex V, different from the colours of its neighbours.

Page 12: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

12

Proof of coloring_vertex_tcc1Proof idea:

If a set has more elements than another one, the difference between these two sets is not empty.

The notion of cardinalityThree new lemmas to prove the tcc1

Page 13: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

13

Proof of coloring_vertex_tcc1

Encountered problems:Not acquainted with the PVS syntaxToo strong hypothesis in one of the three

lemmasnot easy to prove

Page 14: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

14

Proof of coloring_vertex_tcc2Main idea :

a well coloured  graph can be created by adding a coloured vertex to a well coloured graph.

Page 15: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

15

Proof of coloring_vertex_tcc2A well-coloured graph

Page 16: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

16

Proof of coloring_vertex_tcc2A vertex is selected

Page 17: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

17

Proof of coloring_vertex_tcc2An unused colour is selected

Page 18: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

18

Proof of coloring_vertex_tcc2The coloured vertex is added to the well-

coloured graph

Page 19: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

19

Proof of coloring_vertex_tcc2Two steps :

Modification of the colouring function.

Modification of the well-coloured graph.

Page 20: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

20

Proof of coloring_tcc5Main idea :

Set “S” representing the vertices (coloured or not) of a graph

Strict subset “s” of the set (coloured vertices)An element “x” not part of the subset (vertex

about to be coloured)The number of vertices to be coloured is

always decreasing

Page 21: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

21

Proof of coloring_tcc5A subset, a strict subset and an elementYellow area : vertices remaining uncoloured

X

Page 22: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

22

Proof of coloring_tcc5Adding the element to the subsetYellow area becomes the green one

X

Page 23: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

23

Proof of coloring_tcc5Green area strict subset of the yellow area

XX

Page 24: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

24

Proof Result

In order to compare: last year, at the end of their project, they had 36 proved and 6 unproved lemmas with 11 TCCs for a total of nearly 21 seconds.

Page 25: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

25

ConclusionProofs are completeUsing PVS

Think whether what we are writing is correct and why

Step by step correctionMathematical logic

Finishing the project

Page 26: Graph Colouring The Team : Aymen Dammak Sébastien Jagueneau Florian Lajus Xavier Loubatier Cyril Rayot Mathieu Rey Mentor : Paul-Yves Gloess 1.

26

Thanks for your attention