latex + makefiles + fixini

This commit is contained in:
Francesco Mecca 2020-05-22 00:15:00 +02:00
parent b472e6db1c
commit d3775adf91
21 changed files with 110 additions and 31 deletions

14
.gitignore vendored
View file

@ -11,6 +11,20 @@ analisi.pn.tex
analisi.tex analisi.tex
tesi_unicode.tex tesi_unicode.tex
part4_unicode.tex part4_unicode.tex
1.accenti.org
1.accenti.tex
1.accenti.tex~
2.accenti.org
2.accenti.tex
2.accenti.tex~
2.accenti.org
analisi_accenti.org
4.accenti.org
4.accenti.tex
4.accenti.tex~
4.tex
4_accenti.tex
4_accenti.tex~
## Core latex/pdflatex auxiliary files: ## Core latex/pdflatex auxiliary files:

View file

@ -8,7 +8,7 @@ Possiamo definire i numeri naturali utilizzando la rappresenzationa di
Von Neumann: Von Neumann:
- definifiamo la funzione /successore(n)/ come: - definifiamo la funzione /successore(n)/ come:
| successore(n) = n {n} | successore(n) = n {n}
- 0 = ∅ - 0 = ∅
- 1 = 0 {0} = {∅} - 1 = 0 {0} = {∅}
- 2 = 1 {1} = {0, 1} - 2 = 1 {1} = {0, 1}
@ -21,7 +21,7 @@ I numeri interi sono i numeri appartenenti all'insieme dei numeri interi ,
ovvero tutti i numeri il cui valore assoluto e` un numero naturale. ovvero tutti i numeri il cui valore assoluto e` un numero naturale.
Possiamo rappresentare intuitivamente l'insieme dei numeri interi Possiamo rappresentare intuitivamente l'insieme dei numeri interi
come {n | ∃(a,b) ∈ ×, n = a-b} come {n \vert{} ∃(a,b) ∈ ×, n = a-b}
** Numeri razionali ** Numeri razionali
@ -34,20 +34,20 @@ non termina (numeri irrazionali).
L'intersezione fra due insiemi e` a sua volta un insieme contenente L'intersezione fra due insiemi e` a sua volta un insieme contenente
gli elementi in comune fra i due insiemi: gli elementi in comune fra i due insiemi:
| A∩B = {x | x∈A ∧ x∈B} | A∩B = {x \vert{} x∈A ∧ x∈B}
** Unione ** Unione
L'unione fra due insiemi e` a sua volta un insieme contenente L'unione fra due insiemi e` a sua volta un insieme contenente
gli elementi dei due insiemi: gli elementi dei due insiemi:
| A∩B = {x | x∈A x∈B} | A∩B = {x \vert{} x∈A x∈B}
** Differenza ** Differenza
La differenza fra due insiemi e` a sua volta un insieme contenente La differenza fra due insiemi e` a sua volta un insieme contenente
tutti gli elementi presenti nell'insieme a sinistra della differenza ma tutti gli elementi presenti nell'insieme a sinistra della differenza ma
non non contenuti nell'insieme a destra: non non contenuti nell'insieme a destra:
| A \\ B = {x | x∈A ∧ x∉B} | A \\ B = {x \vert{} x∈A ∧ x∉B}
** Insieme Potenza ** Insieme Potenza
@ -57,7 +57,7 @@ l'insieme che contiene tutti i sottoinsiemi di S.
** Complemento di un insieme ** Complemento di un insieme
Il complemento di un insieme e` a sua volta un insieme che contiene Il complemento di un insieme e` a sua volta un insieme che contiene
tutti gli elementi che non appartengono all'insieme di partenza: tutti gli elementi che non appartengono all'insieme di partenza:
| Aᶜ = {a | a∉A} | Aᶜ = {a \vert{} a∉A}
** Insieme contenuto ** Insieme contenuto
@ -70,23 +70,23 @@ loro volta elementi di B:
Un insieme A si dice strettamente contenuto in B se tutti gli elementi di A sono a Un insieme A si dice strettamente contenuto in B se tutti gli elementi di A sono a
loro volta elementi di B ma ci sono degli elementi di B che non loro volta elementi di B ma ci sono degli elementi di B che non
appartengono ad A: appartengono ad A:
| A⊂B iff (∀a∈A, a∈B) ∧ (∃b∈B | b∉A) | A⊂B iff (∀a∈A, a∈B) ∧ (∃b∈B \vert{} b∉A)
** Prodotto Cartesiano ** Prodotto Cartesiano
Il prodotto cartesiano di due insiemi e` un insieme contenente tutte Il prodotto cartesiano di due insiemi e` un insieme contenente tutte
le coppie ordinate di cui il primo elemento appartiene al primo le coppie ordinate di cui il primo elemento appartiene al primo
insieme ed il secondo elemento al secondo insieme: insieme ed il secondo elemento al secondo insieme:
| A × B = {(a, b) | a∈A ∧ b∈B} | A × B = {(a, b) \vert{} a∈A ∧ b∈B}
** Arieta` n ** Arietà n
Si definisce arietà di una relazione R il numero di insiemi Si definisce arietà di una relazione R il numero di insiemi
a cui si applica quella relazione. Se una relazione ha arietà n: a cui si applica quella relazione. Se una relazione ha arietà n:
| R ⊆ A₁×A₂×...×Aₙ | R ⊆ A₁×A₂×...×Aₙ
** Relazione binaria ** Relazione binaria
Si definisce una relazione R binaria quando R ha arieta` 2: Si definisce una relazione R binaria quando R ha arietà 2:
| R ⊆ A₁×A₂ | R ⊆ A₁×A₂
** Proprieta` riflessiva ** Proprieta` riflessiva
Considerato un insieme A e una relazione R, diciamo che R e` una Considerato un insieme A e una relazione R, diciamo che R e` una
@ -118,8 +118,8 @@ Se la relazione R e` transitiva, allora R=R⁺
Definiamo funzione una relazione fra due insiemi A e B che associa un elemento Definiamo funzione una relazione fra due insiemi A e B che associa un elemento
dell'insieme A ad esattamente un elemento dell'insieme B: dell'insieme A ad esattamente un elemento dell'insieme B:
| f: X↦Y | f: X↦Y
** Funzione di arieta` n ** Funzione di arietà n
Possiamo definire una funzione di arieta` n su un insieme S come: Possiamo definire una funzione di arietà n su un insieme S come:
| f: Sⁿ↦S | f: Sⁿ↦S
** Funzione iniettiva ** Funzione iniettiva
Una funzione f: X↦Y si dice iniettiva quando presi due elementi Una funzione f: X↦Y si dice iniettiva quando presi due elementi

Binary file not shown.

View file

@ -1,6 +1,6 @@
SRC = 1.tex SRC = 1.tex
AUX = 1.aux AUX = 1.aux
DEL = 1.aux 1.bbl 1.blg 1.log 1.out 1_unicode.tex 1.pdf 1.tex texput.log 1.definizioni.aux 1.definizioni.out 1.toc 1.definizioni.log 1.definizioni.tex 1.definizioni.toc 1.tex 1.definizioni.tex DEL = 1.aux 1.bbl 1.blg 1.log 1.out 1_unicode.tex 1.pdf 1.tex texput.log 1.definizioni.aux 1.definizioni.out 1.toc 1.definizioni.log 1.definizioni.tex 1.definizioni.toc 1.tex 1.definizioni.tex 1.accenti.tex
NAME = definizioni NAME = definizioni
tesi: tesi:
@ -9,8 +9,9 @@ tesi:
rm -f $(DEL) rm -f $(DEL)
@echo @echo
@echo "=== Building from scratch ===" @echo "=== Building from scratch ==="
emacs -batch 1.definizioni.org -f org-latex-export-to-latex --kill accenti 1.definizioni.org > 1.accenti.org
python3 ../conv/conv.py 1.definizioni.tex 1.tex emacs -batch 1.accenti.org -f org-latex-export-to-latex --kill
python3 ../conv/conv.py 1.accenti.tex 1.tex
pdflatex $(SRC) pdflatex $(SRC)
@echo @echo
@echo "=== All done. Generated $(NAME).pdf ===" @echo "=== All done. Generated $(NAME).pdf ==="

View file

@ -1,5 +1,6 @@
* Rete E * Rete E
#+CAPTION: Rete E
[[./reteE.jpg]] [[./reteE.jpg]]
I master sono modellati dai posti Richiesta, Attesa e Elabora. Lo slave I master sono modellati dai posti Richiesta, Attesa e Elabora. Lo slave
@ -83,6 +84,7 @@ avvenga il join di due processi con lo diverso padre:
* Rete F * Rete F
#+CAPTION: Rete F
[[./reteF.jpg]] [[./reteF.jpg]]
I master sono modellati dai posti Richiesta, Attesa e Elabora. Gli slave I master sono modellati dai posti Richiesta, Attesa e Elabora. Gli slave

View file

@ -1,6 +1,6 @@
SRC = 2.tex SRC = 2.b.tex
AUX = 2.aux AUX = 2.aux
DEL = 2.aux 2.bbl 2.blg 2.log 2.out 2_unicode.tex 2.pdf 2.tex texput.log 2.b.aux 2.b.out 2.toc 2.b.log 2.b.tex 2.b.toc 2.tex 2.b.tex DEL = 2.aux 2.bbl 2.blg 2.log 2.out 2_unicode.tex 2.pdf 2.tex texput.log 2.b.aux 2.b.out 2.toc 2.b.log 2.b.tex 2.b.toc 2.tex 2.b.tex 2.accenti.org
NAME = b NAME = b
tesi: tesi:
@ -9,8 +9,9 @@ tesi:
rm -f $(DEL) rm -f $(DEL)
@echo @echo
@echo "=== Building from scratch ===" @echo "=== Building from scratch ==="
emacs -batch 2.b.org -f org-latex-export-to-latex --kill accenti 2.b.org > 2.accenti.org
python3 ../conv/conv.py 2.b.tex 2.tex emacs -batch 2.accenti.org -f org-latex-export-to-latex --kill
python3 ../conv/conv.py 2.accenti.tex 2.b.tex
pdflatex $(SRC) pdflatex $(SRC)
@echo @echo
@echo "=== All done. Generated $(NAME).pdf ===" @echo "=== All done. Generated $(NAME).pdf ==="

Binary file not shown.

View file

@ -67,7 +67,9 @@ analisi; in ordine sono stati applicati:
** P e T invarianti ** P e T invarianti
Tramite GreatSPN possiamo calcolare gli T- e P- semiflussi Tramite GreatSPN possiamo calcolare gli T- e P- semiflussi
#+CAPTION: T-semiflows
[[./semiflowsAT.jpg]] [[./semiflowsAT.jpg]]
#+CAPTION: P-semiflows
[[./semiflowsAP.jpg]] [[./semiflowsAP.jpg]]
Gli P-semiflussi sono i seguenti: Gli P-semiflussi sono i seguenti:
@ -181,7 +183,9 @@ di un lavoro richiesto da un altro master.
** P e T invarianti ** P e T invarianti
Tramite GreatSPN possiamo calcolare gli T- e P- semiflussi Tramite GreatSPN possiamo calcolare gli T- e P- semiflussi
#+CAPTION: T-semiflows
[[./semiflowsBT.jpg]] [[./semiflowsBT.jpg]]
#+CAPTION: P-semiflows
[[./semiflowsBP.jpg]] [[./semiflowsBP.jpg]]
Gli P-invarianti sono i seguenti: Gli P-invarianti sono i seguenti:
@ -266,7 +270,9 @@ FreeChoice e Risultato.
** P e T invarianti ** P e T invarianti
Tramite GreatSPN possiamo calcolare gli T- e P- semiflussi Tramite GreatSPN possiamo calcolare gli T- e P- semiflussi
#+CAPTION: T-semiflows
[[./semiflowsCT.jpg]] [[./semiflowsCT.jpg]]
#+CAPTION: P-semiflows
[[./semiflowsCP.jpg]] [[./semiflowsCP.jpg]]
Gli P-invarianti sono i seguenti: Gli P-invarianti sono i seguenti:
@ -334,7 +340,7 @@ Gli T-invarianti sono i seguenti:
Fine_Servizioₛ + Reset + Scelta₁ + copy_azione_localeₘ + Fine_Servizioₛ + Reset + Scelta₁ + copy_azione_localeₘ +
copy_Richiesta_Servizio + copy_Attesa_Elaborazione + copy_Resetₘ copy_Richiesta_Servizio + copy_Attesa_Elaborazione + copy_Resetₘ
Come nella rete B, in assenza di fairness non possiamo rispettare la Come nella rete B, in assenza di fairness non possiamo rispettare la
condizione di liveness e c'e` possiblita` di starvation. condizione di liveness e c'e` possibilita` di starvation.
* Rete D * Rete D
Due master identici, uno slave di tipo 1 e uno slave di tipo 1 scelti Due master identici, uno slave di tipo 1 e uno slave di tipo 1 scelti
@ -346,7 +352,9 @@ associati ciascuno ad un master diverso.
** P e T invarianti ** P e T invarianti
Tramite GreatSPN possiamo calcolare gli T- e P- semiflussi Tramite GreatSPN possiamo calcolare gli T- e P- semiflussi
#+CAPTION: T-semiflows
[[./semiflowsDT.jpg]] [[./semiflowsDT.jpg]]
#+CAPTION: P-semiflows
[[./semiflowsDP.jpg]] [[./semiflowsDP.jpg]]
Gli P-invarianti sono i seguenti: Gli P-invarianti sono i seguenti:
@ -372,7 +380,7 @@ Gli T-invarianti sono i seguenti:
azione_locale_{m2} + Richiesta_Servizio₂ + Attesa_Elaborazione₂ + azione_locale_{m2} + Richiesta_Servizio₂ + Attesa_Elaborazione₂ +
Reset_{m2} Reset_{m2}
Come nella rete B, in assenza di fairness non possiamo rispettare la Come nella rete B, in assenza di fairness non possiamo rispettare la
condizione di liveness e c'e` possiblita` di starvation. condizione di liveness e c'e` possibilita` di starvation.
** Decision Diagram ** Decision Diagram
L'efficacia dei decision diagram sulla generazione dello stato degli L'efficacia dei decision diagram sulla generazione dello stato degli
@ -391,10 +399,17 @@ assegnazioni i seguenti algoritmi:
- Gibbs-Poole-Stockmeier: un altro algoritmo matriciale che nella rete - Gibbs-Poole-Stockmeier: un altro algoritmo matriciale che nella rete
in analisi ha restituito il risultato peggiore in analisi ha restituito il risultato peggiore
#+CAPTION: Algoritmo di Sloan
[[./diagrammi/sloan.jpg]] [[./diagrammi/sloan.jpg]]
#+CAPTION: Algoritmo di Cuthull-McKee
[[./diagrammi/mckee.jpg]] [[./diagrammi/mckee.jpg]]
#+CAPTION: Algoritmo di Tovchigrechko
[[./diagrammi/tovchi.jpg]] [[./diagrammi/tovchi.jpg]]
#+CAPTION: Algoritmo di Noack
[[./diagrammi/noack.jpg]] [[./diagrammi/noack.jpg]]
#+CAPTION: Algoritmo P-Chain
[[./diagrammi/p-chain.jpg]] [[./diagrammi/p-chain.jpg]]
#+CAPTION: Algoritmo Gradient-P
[[./diagrammi/gradient.jpg]] [[./diagrammi/gradient.jpg]]
#+CAPTION: Algoritmo di Gibbs-Poole-Stockmeier
[[./diagrammi/gibbs.jpg]] [[./diagrammi/gibbs.jpg]]

View file

@ -1,6 +1,6 @@
SRC = 2.tex SRC = 2.tex
AUX = 2.aux AUX = 2.aux
DEL = 2.aux 2.bbl 2.blg 2.log 2.out 2_unicode.tex 2.pdf 2.tex texput.log 2.pn.aux 2.pn.out 2.toc 2.pn.log 2.pn.tex 2.pn.toc 2.tex 2.pn.tex DEL = 2.aux 2.bbl 2.blg 2.log 2.out 2_unicode.tex 2.pdf 2.tex texput.log 2.pn.aux 2.pn.out 2.toc 2.pn.log 2.pn.tex 2.pn.toc 2.tex 2.pn.tex 2.accenti.org
NAME = pn NAME = pn
tesi: tesi:
@ -9,7 +9,8 @@ tesi:
rm -f $(DEL) rm -f $(DEL)
@echo @echo
@echo "=== Building from scratch ===" @echo "=== Building from scratch ==="
emacs -batch 2.pn.org -f org-latex-export-to-latex --kill accenti 2.pn.org > 2.accenti.org
emacs -batch 2.accenti.org -f org-latex-export-to-latex --kill && mv 2.accenti.tex 2.pn.tex
python3 ../conv/conv.py 2.pn.tex 2.tex python3 ../conv/conv.py 2.pn.tex 2.tex
pdflatex $(SRC) pdflatex $(SRC)
@echo @echo

View file

@ -1,6 +1,6 @@
SRC = analisi.tex SRC = analisi.tex
AUX = analisi.aux AUX = analisi.aux
DEL = analisi.aux analisi.bbl analisi.blg analisi.log analisi.out analisi_unicode.tex analisi.pdf analisi.tex texput.log analisi.aux analisi.out analisi.toc analisi.log analisi.tex analisi.toc analisi.tex analisi.tex DEL = analisi.aux analisi.bbl analisi.blg analisi.log analisi.out analisi_unicode.tex analisi.pdf analisi.tex texput.log analisi.aux analisi.out analisi.toc analisi.log analisi.tex analisi.toc analisi.tex analisi.tex analisi_accenti.org
NAME = NAME =
tesi: tesi:
@ -9,7 +9,8 @@ tesi:
rm -f $(DEL) rm -f $(DEL)
@echo @echo
@echo "=== Building from scratch ===" @echo "=== Building from scratch ==="
emacs -batch analisi.org -f org-latex-export-to-latex --kill accenti analisi.org > analisi_accenti.org
emacs -batch analisi_accenti.org -f org-latex-export-to-latex --kill && mv analisi_accenti.tex analisi.tex
python3 ../conv/conv.py analisi.tex analisi.tex python3 ../conv/conv.py analisi.tex analisi.tex
pdflatex $(SRC) pdflatex $(SRC)
@echo @echo

View file

@ -85,6 +85,7 @@ AG (#P1==1 -> AF (#P3 == 1))
AG (#Q1==1 -> AF (#Q3 == 1)) AG (#Q1==1 -> AF (#Q3 == 1))
AG (#Q1==1 -> EF (#Q3 == 1)) AG (#Q1==1 -> EF (#Q3 == 1))
#+END_SRC #+END_SRC
#+CAPTION: Rete 3.2
\includepdf{3.2.jpg} \includepdf{3.2.jpg}
** Algebra dei processi ** Algebra dei processi
Riportiamo il modello dell'algoritmo 3.2 secondo l'algebra dei Riportiamo il modello dell'algoritmo 3.2 secondo l'algebra dei
@ -106,7 +107,9 @@ processi CSP.
| Q₃ ::= critical_{q}.Q₄ | Q₃ ::= critical_{q}.Q₄
| Q₄ ::= set_{p}.Q₁ | Q₄ ::= set_{p}.Q₁
#+CAPTION: Reachability Graph 3.2
\includepdf{rg_3.2.jpg} \includepdf{rg_3.2.jpg}
#+CAPTION: Derivation Graph 3.2
\includepdf{derivation_3.2.jpg} \includepdf{derivation_3.2.jpg}
** Risultati ** Risultati
@ -229,6 +232,7 @@ AG(!(#Await_P == 1) || !(#Await_Q == 1)) = true
AG ((#Wait_P==1 || #Await_Q == 1) -> AF (#Done_P == 1 || #Done_Q == 1)) = false AG ((#Wait_P==1 || #Await_Q == 1) -> AF (#Done_P == 1 || #Done_Q == 1)) = false
AG (#Await_P==1 -> AF (#Done_P == 1)) = false AG (#Await_P==1 -> AF (#Done_P == 1)) = false
#+END_SRC #+END_SRC
#+CAPTION: Rete 3.5
\includepdf{3.5.jpg} \includepdf{3.5.jpg}
** Risultati ** Risultati
@ -316,6 +320,7 @@ AG (#P1 == 1 -> EF(#Q4==1 || #Q4 == 1))
AG (#P2 == 1 -> AF (#P4 == 1)) AG (#P2 == 1 -> AF (#P4 == 1))
AG (#Q2 == 1 -> AF (#Q4 == 1)) AG (#Q2 == 1 -> AF (#Q4 == 1))
#+END_SRC #+END_SRC
#+CAPTION: Rete 3.6
\includepdf{3.6.jpg} \includepdf{3.6.jpg}
** Algebra dei processi ** Algebra dei processi
L'algoritmo 3.6 modellato secondo NuSMV e GreatSPN mostra che non c'e` L'algoritmo 3.6 modellato secondo NuSMV e GreatSPN mostra che non c'e`
@ -347,7 +352,9 @@ nodi ed e` equivalente al Reachability Graph.
| Q₅ ::= setFalse_{q}.Q₁ | Q₅ ::= setFalse_{q}.Q₁
#+CAPTION: Reachability Graph 3.6
\includepdf{rg_3.6.jpg} \includepdf{rg_3.6.jpg}
#+CAPTION: Derivation Graph 3.6
\includepdf{derivation_3.6.jpg} \includepdf{derivation_3.6.jpg}
** Risultati ** Risultati
@ -501,6 +508,7 @@ seguente formula CTL:
AG(#await_P == 1 -> EF(#critical_Q==1 || #critical_P == 1)) AG(#await_P == 1 -> EF(#critical_Q==1 || #critical_P == 1))
#+END_SRC #+END_SRC
che conferma la presenza di deadlock causata dalle due variabili booleane. che conferma la presenza di deadlock causata dalle due variabili booleane.
#+CAPTION: Rete 3.8
\includepdf{3.8.jpg} \includepdf{3.8.jpg}
** Risultati ** Risultati
Nella tabella mostriamo i risultati ottenuti Nella tabella mostriamo i risultati ottenuti
@ -653,6 +661,7 @@ seguente formula CTL:
| AG(#setTrue_P == 1 -> EF(#critical_Q==1 || #critical_P == 1)) | AG(#setTrue_P == 1 -> EF(#critical_Q==1 || #critical_P == 1))
che conferma la presenza di deadlock causata dalle due variabili che conferma la presenza di deadlock causata dalle due variabili
booleane. booleane.
#+CAPTION: Rete 3.9
\includepdf{3.9.jpg} \includepdf{3.9.jpg}
** Risultati ** Risultati
Nella tabella mostriamo i risultati ottenuti Nella tabella mostriamo i risultati ottenuti
@ -911,6 +920,7 @@ AG ((#local_P==1 || #local_Q == 1) -> AF (#critical_P == 1 || \#critical_Q == 1)
AG (#local_P==1 -> AF (#critical_P == 1)) AG (#local_P==1 -> AF (#critical_P == 1))
AG (#local_Q==1 -> AF (#critical_Q == 1)) AG (#local_Q==1 -> AF (#critical_Q == 1))
#+END_SRC #+END_SRC
#+CAPTION: Rete 3.10
\includepdf{dekker.jpg} \includepdf{dekker.jpg}
Ci aspettiamo che come in precedenza ci sia deadlock perche` viene Ci aspettiamo che come in precedenza ci sia deadlock perche` viene
data ai processi la possibilita` di rimanere su /local/. data ai processi la possibilita` di rimanere su /local/.
@ -975,7 +985,8 @@ La trace equivalence e` piu` debole della bisimulation equivalence:
| p q → p ⋍_{T} q | p q → p ⋍_{T} q
ma non viceversa ma non viceversa
| p q ↛ p ⋍_{T} q | p q ↛ p ⋍_{T} q
notiamo subito che una sequenza /s/ dove /criticalₚ/ e /critical_{q}/ Dato che l'algoritmo 3.6 non rispetta la mutua esclusione,
possiamo affermare che una sequenza /s/ dove /criticalₚ/ e /critical_{q}/
appaiono in successione, non e` una sequenza valida per il modello appaiono in successione, non e` una sequenza valida per il modello
dell'algoritmo 3.2 ma lo e` per il modello dell'algoritmo 3.6. dell'algoritmo 3.2 ma lo e` per il modello dell'algoritmo 3.6.
| s = ...criticalₚcritical_{q}... | s = ...criticalₚcritical_{q}...
@ -996,6 +1007,9 @@ stesse riduzioni:
Riportiamo le immagini delle due reti ridotte. Riportiamo le immagini delle due reti ridotte.
Le transizioni relative a /setTrue/ e /await/ non sono riducibili in Le transizioni relative a /setTrue/ e /await/ non sono riducibili in
quanto hanno archi uscenti. Possiamo affermare che le due reti non quanto hanno archi uscenti. Possiamo affermare che le due reti non
sono equivalenti, come era deducibile dal fatto che rispettano diverse proprieta`. sono equivalenti, come era deducibile dal fatto che rispettano diverse
proprieta`.
#+CAPTION: Riduzione rete 3.6
[[./ridotto_3.6.jpg]] [[./ridotto_3.6.jpg]]
#+CAPTION: Riduzione rete 3.8
[[./ridotto_3.8.jpg]] [[./ridotto_3.8.jpg]]

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 93 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

After

Width:  |  Height:  |  Size: 37 KiB

View file

@ -1,3 +1,5 @@
#+LaTeX_HEADER: \usepackage{pdfpages}
#+LaTeX_HEADER: \usepackage{comment}
* Modello A * Modello A
Sono stati usati tre template per rappresentare un sender, un link wd Sono stati usati tre template per rappresentare un sender, un link wd
un receiver un receiver
@ -16,7 +18,7 @@ urgente /LM/ e resetta il clock /sc/.
Viene simulata la verifica dell'ack in un intervallo di tempo [2;4] e Viene simulata la verifica dell'ack in un intervallo di tempo [2;4] e
successivamente l'automa torna allo stato iniziale resettando il clock successivamente l'automa torna allo stato iniziale resettando il clock
/sc/. /sc/.
# \includepdf{sender_A.jpg} #+CAPTION: Sender protocollo A
[[./sender_A.jpg]] [[./sender_A.jpg]]
** Receiver ** Receiver
Il receiver e` simmetrico al sender. Dallo stato iniziale di /wait/ Il receiver e` simmetrico al sender. Dallo stato iniziale di /wait/
@ -28,6 +30,7 @@ La transizione dallo stato /done_pkg/ a /send_ack/ simula la generazione
di un pacchetto di ack in un intervallo di tempo [2;4] ed tornare allo di un pacchetto di ack in un intervallo di tempo [2;4] ed tornare allo
stato iniziale dopo aver inviato il pacchetto nel canale di stato iniziale dopo aver inviato il pacchetto nel canale di
sincronizzazione urgente /RL/. sincronizzazione urgente /RL/.
#+CAPTION: Receiver protocollo A
[[./receiver_A.jpg]] [[./receiver_A.jpg]]
** Link ** Link
Il link e` modellato come un canale perfetto senza perdite. Lo stato Il link e` modellato come un canale perfetto senza perdite. Lo stato
@ -40,6 +43,7 @@ simula l'arrivo nello stato /received_ack/ dal canale di trasmissione
/RL/ e l'invio verso il sender dallo stato /resend_ack/ attraverso il /RL/ e l'invio verso il sender dallo stato /resend_ack/ attraverso il
canale di trasmissione /LM/. Per il processing dei pacchetti canale di trasmissione /LM/. Per il processing dei pacchetti
l'intervallo di tempo e` sempre [2;4]. l'intervallo di tempo e` sempre [2;4].
#+CAPTION: Link protocollo A
[[./link_A.jpg]] [[./link_A.jpg]]
** Proprieta` ** Proprieta`
Sono state verificate tre proprieta` TCTL sul modello: Sono state verificate tre proprieta` TCTL sul modello:
@ -69,11 +73,13 @@ Come si denota dall'immagine il link e` simile a quello del modello A
eccezion fatta per la possibilita` di procedere non eccezion fatta per la possibilita` di procedere non
deterministicamente dagli spazi /received_pkg/ e /received_ack/ verso deterministicamente dagli spazi /received_pkg/ e /received_ack/ verso
/loss/ /loss/
#+CAPTION: Link protocollo B
[[./link_B.jpg]] [[./link_B.jpg]]
Mostriamo un trace in cui il link perde un pacchetto di ack inviato Mostriamo un trace in cui il link perde un pacchetto di ack inviato
dal sender e il sistema va in deadlock. dal sender e il sistema va in deadlock.
Dalla figura possiamo notare la transizione che simula la perdita, Dalla figura possiamo notare la transizione che simula la perdita,
ovvero l'arco /received_ack//loss/. ovvero l'arco /received_ack//loss/.
#+CAPTION: Trace con deadlock
[[./trace_B.jpg]] [[./trace_B.jpg]]
\includepdf{trace_B2.jpg} \includepdf{trace_B2.jpg}
** Proprieta` ** Proprieta`
@ -110,6 +116,7 @@ tenere traccia dei pacchetti inviati e degli ack ricevuti.
Di seguito viene mostrato il receiver del modello C. Rispetto al Di seguito viene mostrato il receiver del modello C. Rispetto al
Modello B il receiver utilizza una flag binaria locale /r_frame/ per tenere Modello B il receiver utilizza una flag binaria locale /r_frame/ per tenere
traccia degli pacchetti gia` ricevuti e processati. traccia degli pacchetti gia` ricevuti e processati.
#+CAPTION: Receiver protocollo C
[[./receiver_C.jpg]] [[./receiver_C.jpg]]
** Sender ** Sender
Il sender e` stato modellato raddopiando il numero di posti e archi, Il sender e` stato modellato raddopiando il numero di posti e archi,
@ -122,8 +129,10 @@ di spostarsi nello spazio /lost/ e riprovare l'invio del pacchetto.
Si nota subito che i due timer sono indipendenti l'uno dall'altro e vi Si nota subito che i due timer sono indipendenti l'uno dall'altro e vi
e` la possibilita` di modellare i sender senza duplicare il numero di e` la possibilita` di modellare i sender senza duplicare il numero di
spazi. spazi.
[[./sender_2t.jpg]] #+CAPTION: Sender protocollo C (due timer)
[[./sender_1t.jpg]] [[./sender_2t_C.jpg]]
#+CAPTION: Sender protocollo C (un timer)
[[./sender_1t_C.jpg]]
La variabile che regola il timeout e` un numero intero uguale o La variabile che regola il timeout e` un numero intero uguale o
maggiore del piu` grande fra i seguenti valore: maggiore del piu` grande fra i seguenti valore:
- il massimo tempo necessario all'invio di un pacchetto che il sender non ha processato - il massimo tempo necessario all'invio di un pacchetto che il sender non ha processato

BIN
anno3/vpc/consegne/4/4.pdf Normal file

Binary file not shown.

View file

@ -0,0 +1,20 @@
SRC = 4.tex
AUX = 4.aux
DEL = 4.aux 4.bbl 4.blg 4.log 4.out 4_unicode.tex 4.pdf 4.tex texput.log 4.aux 4.out 4.toc 4.log 4.tex 4.toc 4.tex 4.tex 4.accenti.org
NAME =
tesi:
@echo
@echo "=== Removing temporary files ==="
rm -f $(DEL)
@echo
@echo "=== Building from scratch ==="
accenti 4.org > 4.accenti.org
emacs -batch 4.accenti.org -f org-latex-export-to-latex --kill
python3 ../conv/conv.py 4.accenti.tex $(SRC)
pdflatex $(SRC)
@echo
@echo "=== All done. Generated $(NAME).pdf ==="
clean:
rm -f $(DEL)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 53 KiB

View file

@ -4,7 +4,7 @@ from sys import argv
allsymbols = json.load(open('/home/user/UNITO/anno3/vpc/consegne/conv/unicode-latex.json')) allsymbols = json.load(open('/home/user/UNITO/anno3/vpc/consegne/conv/unicode-latex.json'))
mysymbols = ['', '', '', '', '', '', '', '', '', 'ε', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'ʲ', '', 'π', 'α', 'β', '', 'σ', '', '', '', '', '', '', '', '', '', '', '', 'ˡ', '', '', '', '', '', '', '', '', '', '', '', '', 'Σ', '', '', '', 'τ', '', '', '', '' ] mysymbols = ['', '', '', '', '', '', '', '', '', 'ε', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'ʲ', '', 'π', 'α', 'β', '', 'σ', '', '', '', '', '', '', '', '', '', '', '', 'ˡ', '', '', '', '', '', '', '', '', '', '', '', '', 'Σ', '', '', '', 'τ', '', '', '', '', '' ]
extrasymbols = {'': '\in', extrasymbols = {'': '\in',
'': '\llbracket', '': '\llbracket',
'': r'\rrbracket', '': r'\rrbracket',

View file

@ -1,5 +1,6 @@
* TODO VPC [16/20] * TODO VPC [16/20]
- [ ] Controlla good latex - [ ] Controlla good latex
- [ ] Uppaal muovi cartella file
- [X] chiedi della riduzione - [X] chiedi della riduzione
- [X] calcolo semiflussi come da mail - [X] calcolo semiflussi come da mail
- [X] chiedi dell'esame - [X] chiedi dell'esame