diff --git a/.obsidian/community-plugins.json b/.obsidian/community-plugins.json index 0871a1f..dc1b1be 100644 --- a/.obsidian/community-plugins.json +++ b/.obsidian/community-plugins.json @@ -1,9 +1,9 @@ [ "obsidian-ocr", - "pdf-plus", "obsidian-git", "mathlive-in-editor-mode", "smart-second-brain", "local-gpt", - "companion" + "companion", + "pdf-plus" ] \ No newline at end of file diff --git a/.obsidian/workspace.json b/.obsidian/workspace.json index 7197b2b..d2db11a 100644 --- a/.obsidian/workspace.json +++ b/.obsidian/workspace.json @@ -34,10 +34,10 @@ "type": "pdf", "state": { "file": "Concurrent Systems/slides/class 6.pdf", - "page": 5, - "left": -19, - "top": 437, - "zoom": 0.7998812351543944 + "page": 4, + "left": -23, + "top": 143, + "zoom": 0.6627078384798101 }, "icon": "lucide-file-text", "title": "class 6" @@ -100,8 +100,7 @@ } ], "direction": "horizontal", - "width": 307.5, - "collapsed": true + "width": 307.5 }, "right": { "id": "bc4b945ded1926e3", @@ -215,10 +214,10 @@ "companion:Toggle completion": false } }, - "active": "88f2e3a5b973712d", + "active": "51157f32453cba69", "lastOpenFiles": [ - "Concurrent Systems/notes/6 - Atomicity.md", "Concurrent Systems/slides/class 6.pdf", + "Concurrent Systems/notes/6 - Atomicity.md", "Concurrent Systems/notes/images/Pasted image 20250318090733.png", "Concurrent Systems/notes/images/Pasted image 20250318090909.png", "Concurrent Systems/slides/class 5.pdf", diff --git a/Concurrent Systems/notes/6 - Atomicity.md b/Concurrent Systems/notes/6 - Atomicity.md index d54f470..a2a7530 100644 --- a/Concurrent Systems/notes/6 - Atomicity.md +++ b/Concurrent Systems/notes/6 - Atomicity.md @@ -39,13 +39,16 @@ Let $\to$ denote $\to_{H} \cup \bigcup_{X \in H} \to _{X}$ We now show that $\to$ is acyclic. 1. It cannot have cycles with 1 edge (i.e. self loops): indeed, if $op \to op$, this would mean that $res(op) < inv(op)$, which of course does not make any sense. -2. it cannot have cycles with 2 edges: +2. It cannot have cycles with 2 edges: - let's assume that $op \to op' \to op$ - both arrows cannot be $\to_H$ nor $\to_X$ (for some X), otw. it won't be a total order (and would be cyclic) - it cannot be that one is $\to_X$ and the other $\to_Y$ (for some $X \neq Y$), otherwise op/op' would be on 2 different objects. - - **So it must b**e $op \to_X op' \to_H op$ (or vice versa) + - **So it must b**e $op \to_X op' \to_H op$ *(or vice versa)* - then, $op' \to op$ means that $res(op') <_H inv(op)$ - - Since $\hat{S}_X$ is a linearization of $\hat{H}|_X$ and op/op' are on X, this implies $res(op') <_X inv(op)$, which means that $op' \to_X op$, and so $\to_X$ would be cyclic. + - Since $\hat{S}_X$ is a linearization of $\hat{H}|_X$ and op/op' are on X (literally because we have op ->x op'), this implies $res(op') <_X inv(op)$, which means that $op' \to_X op$, and so it won't be a total order... So this is not possible either. + +3. It cannot have cycles with more than 2 edges: + 1. > [!PDF|red] class 6, p.6> we would have a cycle of length