my personal experience

Transcription

my personal experience
PhD survival kit
my personal experience
Alexandra Silva
PhD experience
in one slide
PhD experience
in one slide
• First year: no idea
PhD experience
in one slide
• First year: no idea
• Second year: others also have no idea
PhD experience
in one slide
• First year: no idea
• Second year: others also have no idea
• Third year: breakthrough
PhD experience
in one slide
• First year: no idea
• Second year: others also have no idea
• Third year: breakthrough
• Fourth year: where did the 3 years go?
PhD experience
the bad things
PhD experience
the bad things
• Having no idea what you’re doing
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
“I would like to discourage publication of this paper, and
also invite the authors to a deep revision of their results
– not just of the current article.”
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
“I would like to discourage publication of this paper, and
also invite the authors to a deep revision of their results
– not just of the current article.”
“ Thus the contribution of the paper is rather light. In my
opinion, the paper also reveals an awkward ignorance of
automata theory ... It is blotted with abstruse formalism, very
difficult to read (...) does not bring anything new, (...) the
paper should not be accepted.”
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
Golden rule 1: never try to figure out who the
reviewer was, not worth it!
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
Golden rule 1: never try to figure out who the
reviewer was, not worth it!
Golden rule 1I: never be that reviewer ;-)
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
• Supervisor tells you that you should take
more time!
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
• Supervisor tells you that you should take
more time!
He means: you can do it, but you have
to work harder!!
PhD experience
the bad things
• Having no idea what you’re doing
• Getting papers rejected
• Supervisor tells you that you should take
more time!
General golden rule: turn all the negative comments
into energy to improve your work!
PhD experience
the good things
PhD experience
the good things
• Discovering new things (YAY!)
PhD experience
the good things
• Discovering new things (YAY!)
• Having a paper accepted
PhD experience
the good things
• Discovering new things (YAY!)
• Having a paper accepted
• Meeting new people
PhD experience
the good things
• Discovering new things (YAY!)
• Having a paper accepted
• Meeting new people
• Traveling to conferences
PhD experience
the good things
• Discovering new things (YAY!)
• Having a paper accepted
• Meeting new people
• Traveling to conferences
• Looking at the printed thesis
Why industry should
care
WARNING: this slide contains a very personal opinion
Someone who did (=survived) a PhD becomes ...
Why industry should
care
WARNING: this slide contains a very personal opinion
Someone who did (=survived) a PhD becomes ...
• ... a better, more tolerant person.
Why industry should
care
WARNING: this slide contains a very personal opinion
Someone who did (=survived) a PhD becomes ...
• ... a better, more tolerant person.
• ... resistant to criticisms.
Why industry should
care
WARNING: this slide contains a very personal opinion
Someone who did (=survived) a PhD becomes ...
• ... a better, more tolerant person.
• ... resistant to criticisms.
• ... imaginative with finding resources.
Why industry should
care
WARNING: this slide contains a very personal opinion
Someone who did (=survived) a PhD becomes ...
• ... a better, more tolerant person.
• ... resistant to criticisms.
• ... imaginative with finding resources.
• ... goal-driven.
Some advice on writing papers
Some advice on writing papers
• Not everyone knows what you’re thinking
Some advice on writing papers
• Not everyone knows what you’re thinking
• Notation, notation, notation, ...
Some advice on writing papers
• Not everyone knows what you’re thinking
• Notation, notation, notation, ...
• Related work
Some advice on writing papers
• Not everyone knows what you’re thinking
• Notation, notation, notation, ...
• Related work
• Give it to your colleagues to read
Some advice on writing papers
• Not everyone knows what you’re thinking
• Notation, notation, notation, ...
• Related work
• Give it to your colleagues to read
• Don’t try to compress 30 pages into 10
Some advice on writing papers
• Not everyone knows what you’re thinking
• Notation, notation, notation, ...
• Related work
• Give it to your colleagues to read
• Don’t try to compress 30 pages into 10
• Don’t try to make 10 pages out of 1 :-)
Some advice on giving talks
Some advice on giving talks
• No need to show all the details in the
paper
Some advice on giving talks
• No need to show all the details in the
paper
• Keep the slides clean enough to not make
the audience dizzy
Some advice on giving talks
• No need to show all the details in the
paper
• Keep the slides clean enough to not make
the audience dizzy
• Don’t be afraid of saying you don’t know
the answer to a question
PhD experience
in one slide (again)
PhD experience
in one slide (again)
• First year: you find what makes you happy
PhD experience
in one slide (again)
• First year: you find what makes you happy
• Second year: you check what others did
and how you’re gonna rock
PhD experience
in one slide (again)
• First year: you find what makes you happy
• Second year: you check what others did
and how you’re gonna rock
• Third year: breakthrough
PhD experience
in one slide (again)
• First year: you find what makes you happy
• Second year: you check what others did
and how you’re gonna rock
• Third year: breakthrough
• Fourth year: write-it up! (and let it go ;-))
PhD experience
in one slide (again)
• First year: you find what makes you happy
• Second year: you check what others did
and how you’re gonna rock
• Third year: breakthrough
• Fourth year: write-it up! (and let it go ;-))
Love what you do, be proud, you’ll be a good researcher!
Why Computer
Science?
Why Computer
Science?
• We increasingly depend on computers
Why Computer
Science?
• We increasingly depend on computers
• It is still a young field
Why Computer
Science?
• We increasingly depend on computers
• It is still a young field
• It’s exciting!
Why Formal methods?
• We increasingly depend on computers
• It is still a young field
• It’s exciting!
Why Formal methods?
• We increasingly depend on computers
• It is still a young field We need to
trust
them
It’s
exciting!
•
Why Formal methods?
• We increasingly depend on computers
• It is still a young field We need to
trust
them
It’s
exciting!
•
We need to
grow steadily
Why Formal methods?
• We increasingly depend on computers
• It is still a young field We need to
trust
them
It’s
exciting!
•
We need to
grow steadily
Back to earth
Computers
Daily Life
Computers
Daily Life
Computers
Complexity
Daily Life
Importance
Computers
Complexity
Daily Life
Importance
Critical Systems
Critical Systems
Critical Systems
n
a
c
s
e
r
u
Fail
s
e
c
n
e
u
q
e
s
n
o
c
s
u
o
r
t
s
a
s
i
d
e
v
ha
The general problem
• Critical programs should be reliable
• Failures should be avoidable
Need for formal methods
My thesis in context
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
Computer Science
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
Software Engineering
My highschool friends
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
Formal methods
My university friends
My highschool friends
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
Theoretical Computer Science
My colleagues
My university friends
My highschool friends
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
My bosses
Coalgebraic methods
My colleagues
My university friends
My highschool friends
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
My bosses
Coalgebraic methods
My colleagues
My university friends
My highschool friends
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
My bosses
Coalgebraic methods
My colleagues
My university friends
My highschool friends
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
My bosses
Coalgebraic methods
My colleagues
My university friends
My thesis
My highschool friends
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
My thesis in context
My bosses
My colleagues
My university friends
My thesis
My highschool friends
My parents
images from :http://gizmodo.com/5613794/what-is-exactly-a-doctorate
Coalgebraic methods
• Mathematical framework to reason about
state based systems
Coalgebraic methods
• Mathematical framework to reason about
state based systems
Coalgebraic methods
• Mathematical framework to reason about
state based systems
• Strenghts: the type of the system is enough
to derive a canonical notion of behaviour
and equivalence
To reason about programs...
... we need appropriate languages
asdasdasda #$@
#$@asddadas
Quê??
To reason about programs...
... we need appropriate languages
I would like to buy
some presents!
Let’s do it!
To reason about programs...
... we need to know when things mean the same
The shirt costs 30 euros
and the hat costs 20 euros.
The shirt and the hat
cost 50 euros
History
• Kleene proposed a language to talk about the
most basic state based system
History
Regular expressions
• Kleene proposed a language to talk about the
most basic state based system
Deterministic automata
History
Regular expressions
• Kleene proposed a language to talk about the
most basic state based system
Deterministic automata
• Kozen proposed a fully algebraic set of equations
to reason about Kleene’s language
History
Regular expressions
• Kleene proposed a language to talk about the
most basic state based system
Deterministic automata
• Kozen proposed a fully algebraic set of equations
to reason about Kleene’s language
Kleene algebra
Research Questions
Research Questions
(1) Can we define a language (syntax) to denote
behaviors and ...
Research Questions
(1) Can we define a language (syntax) to denote
behaviors and ...
(2)... algebraic laws to reason about equivalence ...
Research Questions
(1) Can we define a language (syntax) to denote
behaviors and ...
(2)... algebraic laws to reason about equivalence ...
(3)... for a large class of systems uniformly?
Research Questions
generalizing
Kleene
(1) Can we define a language (syntax) to denote
behaviors and ...
(2)... algebraic laws to reason about equivalence ...
(3)... for a large class of systems uniformly?
Research Questions
generalizing
Kleene
generalizing
Kozen
(1) Can we define a language (syntax) to denote
behaviors and ...
(2)... algebraic laws to reason about equivalence ...
(3)... for a large class of systems uniformly?
Research Questions
generalizing
Kleene
generalizing
Kozen
(1) Can we define a language (syntax) to denote
behaviors and ...
(2)... algebraic laws to reason about equivalence ...
(3)... for a large class of systems uniformly?
(4) Can coalgebraic methods help: is the type of
the system also enough to derive (1)-(3) above?
Research Questions
generalizing
Kleene
generalizing
Kozen
(1) Can we define a language (syntax) to denote
behaviors and ...
(2)... algebraic laws to reason about equivalence ...
(3)... for a large class of systems uniformly?
(4) Can coalgebraic methods help: is the type of
the system also enough to derive (1)-(3) above?
Impact:
bridge
with
PA
Results I : Stratified systems – D (Id) + (B × Id) + 1
ω
Example: Stratified systems
ε:: = µx.ε | x | �b, ε� |
�
i∈1···n
pi · εi | ↓
where b ∈ B, pi ∈ (0, 1] and
(ε1 ⊕ ε2 ) ⊕ ε3 ≡ ε1 ⊕ (ε2 ⊕ ε3 )
ε1 ⊕ ε2 ≡ ε2 ⊕ ε1
(p1 · ε) ⊕ (p2 · ε) ≡ (p1 + p2 ) · ε
ε[µx.ε/x] ≡ µx.ε
γ[ε/x] ≡ ε ⇒ µx.γ ≡ ε
�
i∈1...n
pi = 1
Same syntax as in [van Glabbeek, Smolka and Steffen’95] and new
axiomatization (inexistent).
Other examples: Segala, alternating, Pnueli-Zuck, transducers...
Automation
derivation of languages was implemented in
• The
Circ
• We proved that the question of whether two
expressions are equivalent is decidable
• Procedure proposed is coinductive, but the axioms
play a key role for guaranteeing termination
Automation
• Construction of bisimulation is very algorithmic
• Yes answer: proof is provided;
No answer: counter-example is produced
• Automation of equivalence checking opens the
door to applications
Why
coinduction?
at we
arewelooking
at now
What
are looking
at now
start
�
y1 : = x
•�
y4 : = f (y1 )
�•
start start
�
�
: = f (x)
y : = f y(x)
start
�
y1 : = x
•�
y4 : = f (y1 )
�•
F
y1 : = f (y1 )
y1 : = f (y1 )
•�
�
loop
�•
y2 : = g(y1 , y4 )
y2 : = g(y1 , y4 ) �
y3 : = g(y1 , y1 )
�
�
y3 : = g(yF1 , y1 ) P(y1 ) T
F
F
�
P(y1 )
Fy2 :
= f (y2 )
P(y2 )
�
y2 : = f (y2 )
� P(y )
loop
P(y ) T
F
�
T
�
z: = y2
�
halt
�
y :� = g(y , y )
y : = g(y , y� )
F
T
P(y
)
�
� y : = f (f (y ))
y : = f (f (y ))
P(y )
T
�
z: = y
�
z: = y�
halt
Algebraic proof
long and requiresgraph
ingenuity transformation
Original proof:
complex
Coinductive proof fully automatic
Algebraic
proof:
beautiful,
but long and requires
Algebraic proof long and
requires ingenuity
�
Coinductive
proof fully automatic
(Kozen)
ingenuity
P(y )
3
�
P(y3 )
T
�
halt
T
P(y2 )
T
Alexandra Silva (CWI)
F
�•
T
y1 : = f (y3 ) �
�
F
�
y1 : = f (y3 ) P(y4 )
�
�• T
P(y4 ) F
T
� �•
�•
F
T
F
�
z: = y2
�
halt
Coinductive proof fully automatic
Coalgebra at the CWI: a brief overview
February 2011
8/9
My research in context
Coalgebraic methods
Theoretical Computer Science
Formal methods
Computer Science
My research in context
RLine 1
Coalgebraic methods
Theoretical Computer Science
Formal methods
Computer Science
My research in context
RLine 1
Coalgebraic methods
Theoretical Computer Science
Formal methods
Computer Science
RLine 2
Line 2: Compositional
semantics of connectors
Line 2: Compositional
semantics of connectors
• In the last decade, there is an increasing trend to
build software out of existing components
Line 2: Compositional
semantics of connectors
• In the last decade, there is an increasing trend to
build software out of existing components
Line 2: Compositional
semantics of connectors
• In the last decade, there is an increasing trend to
build software out of existing components
Invokes and
combines results of
different sources:
Airlines
Car rentals
Hotels
Challenge
Challenge
Challenge
Challenge
• Language: how to
connect pieces?
Challenge
• Language: how to
connect pieces?
• Semantics
Challenge
• Language: how to
connect pieces?
• Semantics
• Compositionality
Solutions
• Channels or connectors expressing coordination
patterns (synchronization, mutual exclusion, ...)
• A number of connector languages exist: BIP, Ptolemy
& Reo
Solutions
• Channels or connectors expressing coordination
patterns (synchronization, mutual exclusion, ...)
• A number of connector languages exist: BIP, Ptolemy
& Reo
Temp
sensor
Clock
Solutions
• Channels or connectors expressing coordination
patterns (synchronization, mutual exclusion, ...)
• A number of connector languages exist: BIP, Ptolemy
& Reo
Together with Bonsangue & Clarke, we devised the first
compositional model to provide semantics for Reo
Solutions
• Channels or connectors expressing coordination
patterns (synchronization, mutual exclusion, ...)
• A number of connector languages exist: BIP, Ptolemy
& Reo
Together with Bonsangue & Clarke, we devised the first
compositional model to provide semantics for Reo
Together with Arbab, Krause & Moon, we extended the model
with stochastic info
Solutions
• Channels or connectors expressing coordination
patterns (synchronization, mutual exclusion, ...)
• A number of connector languages exist: BIP, Ptolemy
& Reo
How well does the
system
perform
when
connected
in
Together with Bonsangue & Clarke, we devised the first
thissemantics
way?
compositional model to provide
for Reo
Together with Arbab, Krause & Moon, we extended the model
with stochastic info
The big picture
The big picture
Coalgebraic methods
Theoretical Computer Science
Formal methods
Software Engineering
Computer Science
my thesis
And at last....
And at last....
Golden rule: No one knows your thesis
better than yourself!
And at last....
Golden rule: No one knows your thesis
better than yourself!
And remember: be proud, it’s your day!
Thanks for your attention!