IPVM: Content Addressed Compute for an Open World

A presentation at IPFS รพing โ€˜23 in April 2023 in Brussels, Belgium by Brooklyn Zelenka

Slide 1

Slide 1

Interplanetary Virtual Machine ๐Ÿคน Content Addressed Compute for an Open World ๐Ÿค github.com/ipvm-wg lu.ma/ipvm

Slide 2

Slide 2

Slide 3

Slide 3

Sometimes I think the only universal in the computing field is the fetch-execute-cycle. Alan Perlis, Epigrams on Programming #44

Slide 4

Slide 4

IPVM Brooklyn Zelenka @expede github.com/expede

Slide 5

Slide 5

IPVM Brooklyn Zelenka @expede Cofounder & CTO at Fission discord.gg/fissioncodes @fission@plnetwork.xyz IPVM Spec Wrangler โ€” github.com/ipvm-wg github.com/expede

Slide 6

Slide 6

IPVM Brooklyn Zelenka @expede Cofounder & CTO at Fission discord.gg/fissioncodes @fission@plnetwork.xyz IPVM Spec Wrangler โ€” github.com/ipvm-wg github.com/expede

Slide 7

Slide 7

IPVM Greatest Hits ๐Ÿชฉ๐Ÿ•บ

Slide 8

Slide 8

IPVM Greatest Hits ๐Ÿชฉ๐Ÿ•บ How we got here What is an โ€œIPVMโ€ anyway? What weโ€™ve learned How to get involved

Slide 9

Slide 9

IPVM ๐Ÿค Brought To You Byโ€ฆ

Slide 10

Slide 10

IPVM ๐Ÿค Brought To You Byโ€ฆ

Slide 11

Slide 11

IPVM ๐Ÿค Brought To You Byโ€ฆ

Slide 12

Slide 12

IPVM ๐Ÿค Brought To You Byโ€ฆ

Slide 13

Slide 13

IPVM Timeline

Slide 14

Slide 14

IPVM Timeline 2023

Slide 15

Slide 15

IPVM Timeline ๐Ÿ™ˆ IPFS รพing Reykjavรญk 2023

Slide 16

Slide 16

IPVM Timeline ๐Ÿ™ˆ IPFS รพing Reykjavรญk 2023 <crickets>

Slide 17

Slide 17

IPVM Timeline ๐Ÿ™ˆ Specs v0.1 Varsig, Invocation, Task, Workflow IPFS รพing Reykjavรญk <crickets> 2023

Slide 18

Slide 18

IPVM Timeline ๐Ÿ™ˆ Specs v0.1 Varsig, Invocation, Task, Workflow IPFS รพing Reykjavรญk <crickets> 2023 Proof of Concept

Slide 19

Slide 19

IPVM Timeline ๐Ÿ™ˆ Specs v0.1 Varsig, Invocation, Task, Workflow IPFS รพing Reykjavรญk <crickets> 2023 Proof of Concept Homestar (rs-ipvm) Starts

Slide 20

Slide 20

IPVM Timeline ๐Ÿ™ˆ Specs v0.1 Varsig, Invocation, Task, Workflow IPFS รพing Reykjavรญk <crickets> 2023 Proof of Concept Specs v0.2 Homestar (rs-ipvm) Starts

Slide 21

Slide 21

IPVM Timeline ๐Ÿ™ˆ Specs v0.1 Varsig, Invocation, Task, Workflow IPFS รพing Reykjavรญk <crickets> 2023 Proof of Concept Specs v0.2 Homestar (rs-ipvm) Starts IPVM Q1 Workshop Vancouver

Slide 22

Slide 22

IPVM Timeline ๐Ÿ™ˆ Specs v0.1 Varsig, Invocation, Task, Workflow IPFS รพing Reykjavรญk <crickets> ๐Ÿš€ 2023 Proof of Concept Specs v0.2 Homestar (rs-ipvm) Starts IPFS รพing Brussels IPVM Q1 Workshop Vancouver

Slide 23

Slide 23

IPVM What Is An IPVM? ๐Ÿค”

Slide 24

Slide 24

What is an IPVM ๐Ÿค” The HTTP of Compute ๐Ÿคฉ

Slide 25

Slide 25

What is an IPVM ๐Ÿค” The HTTP of Compute ๐Ÿคฉ Compute โ€” like data โ€” should be a ubiquitous commodity End users & IPFS teams can depend on having compute around Fully consistent functionality between clients Replace (e.g.) AWS Lambda with an open protocol & nodes

Slide 26

Slide 26

UCAN Decentralize Auth Everywhere

Slide 27

Slide 27

UCAN Decentralize Auth Everywhere Far Edge Commons Cloud & Edge

Slide 28

Slide 28

UCAN Decentralize Auth Everywhere Far Edge Commons Cloud & Edge

Slide 29

Slide 29

UCAN Decentralize Auth Everywhere Far Edge Commons Cloud & Edge

Slide 30

Slide 30

What is an IPVM ๐Ÿค” Permissionless Interop

Slide 31

Slide 31

What is an IPVM ๐Ÿค” Permissionless Interop ๐Ÿ•ต โš™

Slide 32

Slide 32

What is an IPVM ๐Ÿค” Permissionless Interop ๐Ÿ•ต โš™ ๐Ÿ™‹ โš™๐Ÿ”จ๐Ÿ“ก

Slide 33

Slide 33

What is an IPVM ๐Ÿค” Permissionless Interop ๐Ÿ•ต โš™ ๐Ÿ”Œ ๐Ÿ™‹ โš™๐Ÿ”จ๐Ÿ“ก

Slide 34

Slide 34

What is an IPVM ๐Ÿค” With Their Powers Combined

Slide 35

Slide 35

What is an IPVM ๐Ÿค” With Their Powers Combined Compute โš™ Data ๐Ÿ’พ Auth ๐ŸŽŸ

Slide 36

Slide 36

What is an IPVM ๐Ÿค” With Their Powers Combined Compute โš™ Data ๐Ÿ’พ Auth ๐ŸŽŸ

Slide 37

Slide 37

What is an IPVM ๐Ÿค” With Their Powers Combined Compute โš™ Data ๐Ÿ’พ Auth ๐ŸŽŸ

Slide 38

Slide 38

What is an IPVM ๐Ÿค” With Their Powers Combined Compute โš™ Data ๐Ÿ’พ Auth ๐ŸŽŸ

Slide 39

Slide 39

What is an IPVM ๐Ÿค” With Their Powers Combined { IPVM Compute โš™ Data ๐Ÿ’พ Auth ๐ŸŽŸ

Slide 40

Slide 40

What is an IPVM ๐Ÿค”

Slide 41

Slide 41

What is an IPVM ๐Ÿค” Reusable Spec Stack

Slide 42

Slide 42

What is an IPVM ๐Ÿค” Reusable Spec Stack UCAN Core ๐ŸŽŸ Distributed Authority IPLD-WIT โš™ ABI Varsig โœ Signature Multiformat

Slide 43

Slide 43

What is an IPVM ๐Ÿค” Reusable Spec Stack UCAN Pipeline ๐ŸŒŠ Call Graph, Awaits, etc UCAN Invocation ๐Ÿช„ Input Addressing, Execution, Memoization, etc UCAN Core ๐ŸŽŸ Distributed Authority IPLD-WIT โš™ ABI Varsig โœ Signature Multiformat

Slide 44

Slide 44

What is an IPVM ๐Ÿค” Reusable Spec Stack IPVM Task โš™ VM Config, Verification, etc UCAN Pipeline ๐ŸŒŠ Call Graph, Awaits, etc UCAN Invocation ๐Ÿช„ Input Addressing, Execution, Memoization, etc UCAN Core ๐ŸŽŸ Distributed Authority IPLD-WIT โš™ ABI Varsig โœ Signature Multiformat

Slide 45

Slide 45

What is an IPVM ๐Ÿค” Reusable Spec Stack IPVM Workflow ๐ŸŽ› Transactions, Error Handling, Defaults IPVM Task โš™ VM Config, Verification, etc UCAN Pipeline ๐ŸŒŠ Call Graph, Awaits, etc UCAN Invocation ๐Ÿช„ Input Addressing, Execution, Memoization, etc UCAN Core ๐ŸŽŸ Distributed Authority IPLD-WIT โš™ ABI Varsig โœ Signature Multiformat

Slide 46

Slide 46

What is an IPVM ๐Ÿค” Reusable Spec Stack IPVM Workflow ๐ŸŽ› Transactions, Error Handling, Defaults IPVM Task โš™ VM Config, Verification, etc UCAN Pipeline ๐ŸŒŠ Call Graph, Awaits, etc UCAN-Chan / ใƒฆใƒผใ‚ญใƒฃใƒณใกใ‚ƒใ‚“ Payments UCAN Invocation ๐Ÿช„ Input Addressing, Execution, Memoization, etc UCAN Core ๐ŸŽŸ Distributed Authority IPLD-WIT โš™ ABI Varsig โœ Signature Multiformat

Slide 47

Slide 47

What is an IPVM ๐Ÿค” The Friends You Made Along the Way

Slide 48

Slide 48

What is an IPVM ๐Ÿค” The Friends You Made Along the Way

Slide 49

Slide 49

What is an IPVM ๐Ÿค” The Friends You Made Along the Way G N I K R O W S P U O GR

Slide 50

Slide 50

IPVM Invocation-as-IPLD UCAN Invocation Spec

Slide 51

Slide 51

Invocation-as-IPLD Reference vs Dispatch ๐Ÿ”‘๐Ÿš—

Slide 52

Slide 52

Invocation-as-IPLD Reference vs Dispatch ๐Ÿ”‘๐Ÿš— Arguments

Slide 53

Slide 53

Invocation-as-IPLD Reference vs Dispatch ๐Ÿ”‘๐Ÿš— Task f Arguments Scheduling Con ig, etc

Slide 54

Slide 54

Invocation-as-IPLD Reference vs Dispatch ๐Ÿ”‘๐Ÿš— Task f Arguments Scheduling Con ig, etc

Slide 55

Slide 55

Invocation-as-IPLD Reference vs Dispatch ๐Ÿ”‘๐Ÿš— Task f Arguments Scheduling Con ig, etc

Slide 56

Slide 56

Invocation-as-IPLD Reference vs Dispatch ๐Ÿ”‘๐Ÿš— Task f Arguments Scheduling Con ig, etc

Slide 57

Slide 57

Invocation-as-IPLD Reference vs Dispatch ๐Ÿ”‘๐Ÿš— Receipt Task f Arguments Scheduling Con ig, etc

Slide 58

Slide 58

Invocation-as-IPLD Reference vs Dispatch ๐Ÿ”‘๐Ÿš— Task f ff Arguments Receipt Pure Values & E ects Scheduling Con ig, etc Metadata (e.g. trace)

Slide 59

Slide 59

Invocation-as-IPLD IPLD Schema

Slide 60

Slide 60

Invocation-as-IPLD IPLD Schema Instruction (Closure)

Slide 61

Slide 61

Invocation-as-IPLD IPLD Schema Task Instruction (Closure)

Slide 62

Slide 62

Invocation-as-IPLD IPLD Schema Invocation Task Instruction (Closure)

Slide 63

Slide 63

Invocation-as-IPLD IPLD Schema Invocation Invocation Invocation Task Task Task Instruction (Closure) Instruction (Closure) Instruction (Closure)

Slide 64

Slide 64

Invocation-as-IPLD IPLD Schema f Work low Invocation Invocation Invocation Task Task Task Instruction (Closure) Instruction (Closure) Instruction (Closure)

Slide 65

Slide 65

Invocation-as-IPLD Matching Impedance

Slide 66

Slide 66

Invocation-as-IPLD Matching Impedance

Slide 67

Slide 67

Invocation-as-IPLD Matching Impedance

Slide 68

Slide 68

Invocation-as-IPLD Matching Impedance

Slide 69

Slide 69

Invocation-as-IPLD Matching Impedance e.g. 2 IPLD numerics < 10 WIT numerics

Slide 70

Slide 70

Invocation-as-IPLD Matching Impedance e.g. 2 IPLD numerics < 10 WIT numerics

Slide 71

Slide 71

Invocation-as-IPLD Matching Impedance

Slide 72

Slide 72

IPVM Dataflow & Pipelining ๐Ÿšฐ

Slide 73

Slide 73

Dataflow & Pipelining ๐Ÿšฐ

Slide 74

Slide 74

Dataflow & Pipelining ๐Ÿšฐ Their recommendation, which I feel was prescient, was that [dataflow] seemed to them more like a law of nature, which is not patentable. J. Paul Morrison, Flow-Based Programming

Slide 75

Slide 75

Dataflow & Pipelining ๐Ÿšฐ Solving for Data Gravity

Slide 76

Slide 76

Dataflow & Pipelining ๐Ÿšฐ Solving for Data Gravity

Slide 77

Slide 77

Dataflow & Pipelining ๐Ÿšฐ Solving for Data Gravity

  1. Fetch data 2. Compute on data 3. Output more data 4. GOTO step 1

Slide 78

Slide 78

Dataflow & Pipelining ๐Ÿšฐ Transfer Authority

Slide 79

Slide 79

Dataflow & Pipelining ๐Ÿšฐ Transfer Authority ๐Ÿ‘ฉ๐Ÿ’ป ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ

Slide 80

Slide 80

Dataflow & Pipelining ๐Ÿšฐ Transfer Authority ๐Ÿ‘ฉ๐Ÿ’ป ๐Ÿ‘จ๐Ÿฆณ๐Ÿ–ฅ ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ

Slide 81

Slide 81

Dataflow & Pipelining ๐Ÿšฐ Transfer Authority ๐Ÿ‘ฉ๐Ÿ’ป ๐Ÿ‘จ๐Ÿฆณ๐Ÿ–ฅ ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ ๐Ÿ‘ฉ๐Ÿš€ ๐Ÿถ

Slide 82

Slide 82

Dataflow & Pipelining ๐Ÿšฐ Transfer Authority ๐Ÿ‘ฉ๐Ÿ’ป ๐Ÿ‘จ๐Ÿฆณ๐Ÿ–ฅ ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ ๐ŸŒˆ ๐Ÿพ ๐Ÿงธ ๐Ÿ‘จ๐ŸŽจ ๐Ÿ‘ฉ๐Ÿš€ ๐Ÿถ

Slide 83

Slide 83

Dataflow & Pipelining ๐Ÿšฐ Transfer Authority ๐Ÿ‘ฉ๐Ÿ’ป ๐Ÿ‘จ๐Ÿฆณ๐Ÿ–ฅ ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ ๐ŸŒˆ ๐Ÿถ ๐Ÿฌ ๐Ÿพ ๐Ÿงธ ๐ŸŒˆ ๐Ÿ‘ฉ๐Ÿš€ ๐Ÿถ ๐ŸŒˆ ๐Ÿถ ๐Ÿพ ๐Ÿงธ ๐Ÿ‘จ๐ŸŽจ โ˜โš™

Slide 84

Slide 84

Dataflow & Pipelining ๐Ÿšฐ Distributed Invocation

Slide 85

Slide 85

Dataflow & Pipelining ๐Ÿšฐ Distributed Invocation dns:example.com/TYPE=TXT crud/update

Slide 86

Slide 86

Dataflow & Pipelining ๐Ÿšฐ Distributed Invocation dns:example.com/TYPE=TXT crud/update await mailto:alice@example.com msg/send {to: bob@example.com}

Slide 87

Slide 87

Dataflow & Pipelining ๐Ÿšฐ Distributed Invocation dns:example.com/TYPE=TXT crud/update await mailto:alice@example.com msg/send {to: bob@example.com} await mailto:alice@example.com msg/send {to: carol@example.com}

Slide 88

Slide 88

Dataflow & Pipelining ๐Ÿšฐ Distributed Invocation dns:example.com/TYPE=TXT crud/update await await mailto:alice@example.com msg/send {to: bob@example.com} await mailto:alice@example.com msg/send {to: carol@example.com} await https://example.com/report crud/update

Slide 89

Slide 89

Dataflow & Pipelining ๐Ÿšฐ Distributed Invocation dns:example.com/TYPE=TXT crud/update await mailto:alice@example.com msg/send {to: carol@example.com} await mailto:alice@example.com msg/send {to: bob@example.com} await await https://example.com/report crud/update

Slide 90

Slide 90

Dataflow & Pipelining ๐Ÿšฐ Distributed Invocation ๐Ÿ‘ฉ๐Ÿš€ ๐Ÿ‘จ๐Ÿณ dns:example.com/TYPE=TXT crud/update await mailto:alice@example.com msg/send {to: carol@example.com} await mailto:alice@example.com msg/send {to: bob@example.com} await await https://example.com/report crud/update

Slide 91

Slide 91

Dataflow & Pipelining ๐Ÿšฐ Abstract Resolution Cycle

Slide 92

Slide 92

Dataflow & Pipelining ๐Ÿšฐ Abstract Resolution Cycle

Slide 93

Slide 93

Dataflow & Pipelining ๐Ÿšฐ Abstract Resolution Cycle

Slide 94

Slide 94

Dataflow & Pipelining ๐Ÿšฐ Abstract Resolution Cycle

Slide 95

Slide 95

Dataflow & Pipelining ๐Ÿšฐ Abstract Resolution Cycle

Slide 96

Slide 96

Dataflow & Pipelining ๐Ÿšฐ Abstract Resolution Cycle

Slide 97

Slide 97

Dataflow & Pipelining ๐Ÿšฐ Input Addressing

Slide 98

Slide 98

Dataflow & Pipelining ๐Ÿšฐ Input Addressing ๐Ÿง‡

Slide 99

Slide 99

Dataflow & Pipelining ๐Ÿšฐ Input Addressing hash(๐Ÿง‡) ๐Ÿง‡

Slide 100

Slide 100

Dataflow & Pipelining ๐Ÿšฐ Input Addressing hash(๐Ÿง‡) ๐Ÿง‡ ๐Ÿงพ

Slide 101

Slide 101

Dataflow & Pipelining ๐Ÿšฐ Input Addressing hash(๐Ÿง‡) hash({ rsc: โ€œdns:example.comโ€ op: โ€œcrud/updateโ€ input: {foo: โ€œbarโ€} }) ๐Ÿง‡ ๐Ÿงพ

Slide 102

Slide 102

Dataflow & Pipelining ๐Ÿšฐ Input Addressing hash(๐Ÿง‡) hash({ rsc: โ€œdns:example.comโ€ op: โ€œcrud/updateโ€ input: {foo: โ€œbarโ€} }) ๐Ÿง‡ ๐Ÿงพ

Slide 103

Slide 103

Dataflow & Pipelining ๐Ÿšฐ Cache Intermediate Results

Slide 104

Slide 104

Dataflow & Pipelining ๐Ÿšฐ Cache Intermediate Results ๐Ÿšฐ ๐Ÿšฐ

Slide 105

Slide 105

Dataflow & Pipelining ๐Ÿšฐ Cache Intermediate Results ๐Ÿšฐ ๐Ÿšฐ

Slide 106

Slide 106

Dataflow & Pipelining ๐Ÿšฐ Cache Intermediate Results ๐Ÿšฐ ๐Ÿšฐ

Slide 107

Slide 107

Dataflow & Pipelining ๐Ÿšฐ Cache Intermediate Results ๐Ÿšฐ ๐Ÿšฐ ๐Ÿšฐ

Slide 108

Slide 108

Dataflow & Pipelining ๐Ÿšฐ Reduce, Resume, Recycle โ™ป

Slide 109

Slide 109

Dataflow & Pipelining ๐Ÿšฐ Reduce, Resume, Recycle โ™ป

Slide 110

Slide 110

Dataflow & Pipelining ๐Ÿšฐ Reduce, Resume, Recycle โ™ป

Slide 111

Slide 111

Dataflow & Pipelining ๐Ÿšฐ Reduce, Resume, Recycle โ™ป

Slide 112

Slide 112

IPVM Decentralised Memoization ๐Ÿงพ

Slide 113

Slide 113

Decentralised Memoization ๐Ÿงพ

Slide 114

Slide 114

Decentralised Memoization ๐Ÿงพ [T]he speed of light is constant and New York is not getting any closer to Tokyo. As hardware continues to improve, the latency barrier between distant machines will increasingly dominate Mark Miller, Robust Composition

Slide 115

Slide 115

Decentralised Memoization ๐Ÿงพ With a Little Scale From My Friends

Slide 116

Slide 116

Decentralised Memoization ๐Ÿงพ Throughput With a Little Scale From My Friends Parallelization

Slide 117

Slide 117

Decentralised Memoization ๐Ÿงพ With a Little Scale From My Friends Throughput Ideal (Linear) Parallelization

Slide 118

Slide 118

Decentralised Memoization ๐Ÿงพ With a Little Scale From My Friends Ideal (Linear) Throughput Amdahlโ€™s Law Parallelization

Slide 119

Slide 119

Decentralised Memoization ๐Ÿงพ With a Little Scale From My Friends Ideal (Linear) Throughput Amdahlโ€™s Law Universal Scaling Law Parallelization

Slide 120

Slide 120

Decentralised Memoization ๐Ÿงพ With a Little Scale From My Friends Ideal (Linear) Throughput Amdahlโ€™s Law Incoherence, Data Contention Parallelization Universal Scaling Law

Slide 121

Slide 121

Decentralised Memoization ๐Ÿงพ With a Little Scale From My Friends Throughput Global Adaptive Optimization ๐Ÿš€ Ideal (Linear) Amdahlโ€™s Law Incoherence, Data Contention Parallelization Universal Scaling Law

Slide 122

Slide 122

Decentralised Memoization ๐Ÿงพ Surprise: Reverse Lookup For Free

Slide 123

Slide 123

Decentralised Memoization ๐Ÿงพ Surprise: Reverse Lookup For Free CID โ†’ Computed Metadata

Slide 124

Slide 124

Decentralised Memoization ๐Ÿงพ Surprise: Reverse Lookup For Free CID โ†’ Computed Metadata e.g. AI moderation classifier

Slide 125

Slide 125

Decentralised Memoization ๐Ÿงพ Surprise: Reverse Lookup For Free CID โ†’ Computed Metadata e.g. AI moderation classifier e.g. Distributed token validation

Slide 126

Slide 126

IPVM The Safety Dance ๐Ÿ•บ

Slide 127

Slide 127

The Safety Dance ๐Ÿ•บ

Slide 128

Slide 128

The Safety Dance ๐Ÿ•บ โ€œvirtual resiliencyโ€, analogous to virtual memory [โ€ฆ] allows failure oblivious code to run in a failure resistant manner Goldstein et al, AMBROSIA: Providing Performant Virtual Resiliency for Distributed Applications

Slide 129

Slide 129

The Safety Dance ๐Ÿ•บ

Slide 130

Slide 130

The Safety Dance ๐Ÿ•บ If their application can be cast as pure data processing, they benefit from the past 40-50 years of work form the database community, which has shown how declarative database systems can completely isolate the developer from the possibility of failure Goldstein et al, AMBROSIA: Providing Performant Virtual Resiliency for Distributed Applications

Slide 131

Slide 131

The Safety Dance ๐Ÿ•บ Non-Monotonicity

Slide 132

Slide 132

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream

Slide 133

Slide 133

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream

Slide 134

Slide 134

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream

Slide 135

Slide 135

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream

Slide 136

Slide 136

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream

Slide 137

Slide 137

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream

Slide 138

Slide 138

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream

Slide 139

Slide 139

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream ๐Ÿš€

Slide 140

Slide 140

The Safety Dance ๐Ÿ•บ Non-Monotonicity Impure E ect Stream Pure E ect Stream Pure Function Stream ff ff Base Event Stream ๐Ÿš€

Slide 141

Slide 141

The Safety Dance ๐Ÿ•บ Virtual Resiliency

Slide 142

Slide 142

The Safety Dance ๐Ÿ•บ Virtual Resiliency Mutation ๐Ÿฆ‹ Idempotent ๐Ÿ”‚ Deterministic ๐Ÿ“…

Slide 143

Slide 143

The Safety Dance ๐Ÿ•บ Virtual Resiliency Mutation ๐Ÿฆ‹ Idempotent ๐Ÿ”‚ Deterministic ๐Ÿ“… Query A Query B

Slide 144

Slide 144

The Safety Dance ๐Ÿ•บ Virtual Resiliency Query A Query B Compute A Mutation ๐Ÿฆ‹ Idempotent ๐Ÿ”‚ Deterministic ๐Ÿ“…

Slide 145

Slide 145

The Safety Dance ๐Ÿ•บ Virtual Resiliency Query A Query B Compute A Mutation ๐Ÿฆ‹ Query C Idempotent ๐Ÿ”‚ Deterministic ๐Ÿ“…

Slide 146

Slide 146

The Safety Dance ๐Ÿ•บ Virtual Resiliency Query A Query B Compute A Mutation ๐Ÿฆ‹ Query C Idempotent ๐Ÿ”‚ Deterministic ๐Ÿ“… Compute B Query D

Slide 147

Slide 147

The Safety Dance ๐Ÿ•บ Virtual Resiliency Query A Query B Compute A Mutation ๐Ÿฆ‹ Query C Idempotent ๐Ÿ”‚ Deterministic ๐Ÿ“… Compute B Query D Mutation

Slide 148

Slide 148

The Safety Dance ๐Ÿ•บ Virtual Resiliency Mutation Query A Query B Compute A Mutation ๐Ÿฆ‹ Query C Mutation Idempotent ๐Ÿ”‚ Deterministic ๐Ÿ“… Compute B Query D Mutation

Slide 149

Slide 149

The Safety Dance ๐Ÿ•บ Simplified Safe Layout

Slide 150

Slide 150

The Safety Dance ๐Ÿ•บ Simplified Safe Layout Queries Queries Queries

Slide 151

Slide 151

The Safety Dance ๐Ÿ•บ Simplified Safe Layout Queries Queries Queries Pure Computation Pure Computation Pure Computation

Slide 152

Slide 152

The Safety Dance ๐Ÿ•บ Simplified Safe Layout Queries Queries Queries Pure Computation Pure Computation Pure Computation

Slide 153

Slide 153

The Safety Dance ๐Ÿ•บ Simplified Safe Layout Queries Queries Queries Pure Computation Pure Computation Pure Computation Mutation

Slide 154

Slide 154

The Safety Dance ๐Ÿ•บ Simple Example Compute A Query Compute B Mutation

Slide 155

Slide 155

The Safety Dance ๐Ÿ•บ Simple Example Compute A Query Compute B Mutation

Slide 156

Slide 156

The Safety Dance ๐Ÿ•บ From CID to CHa ๐Ÿต

Slide 157

Slide 157

The Safety Dance ๐Ÿ•บ From CID to CHa ๐Ÿต CID

Slide 158

Slide 158

The Safety Dance ๐Ÿ•บ From CID to CHa ๐Ÿต CID โš™

Slide 159

Slide 159

The Safety Dance ๐Ÿ•บ From CID to CHa ๐Ÿต CID โš™ โ“

Slide 160

Slide 160

The Safety Dance ๐Ÿ•บ From CID to CHa ๐Ÿต CID โš™ โ“ โœ…

Slide 161

Slide 161

The Safety Dance ๐Ÿ•บ From CID to CHa ๐Ÿต CID โš™ โ“ โœ… CHa

Slide 162

Slide 162

The Safety Dance ๐Ÿ•บ From CID to CHa ๐Ÿต CID โš™ โ“ โœ… CHa Task

Slide 163

Slide 163

UCAN Decentralize Auth โ€œCuratedโ€ Future & Todos ๐Ÿ”ฎ

Slide 164

Slide 164

Requirements On Deck: Optimistic Verification

Slide 165

Slide 165

Requirements On Deck: Optimistic Verification

Slide 166

Slide 166

Requirements On Deck: Optimistic Verification

Slide 167

Slide 167

UCAN Decentralize Auth โ€œIPFS Runโ€

Slide 168

Slide 168

UCAN Decentralize Auth Decentralised Wasm Repositories

Slide 169

Slide 169

UCAN Decentralize Auth Decentralised Wasm Repositories

  • NNS

Slide 170

Slide 170

UCAN Decentralize Auth Join Us โœŠ

Slide 171

Slide 171

Join Us โœŠ Connect

Slide 172

Slide 172

Join Us โœŠ Connect Community: github.com/ipvm-wg

Slide 173

Slide 173

Join Us โœŠ Connect Community: github.com/ipvm-wg

Slide 174

Slide 174

Join Us โœŠ Connect Community: github.com/ipvm-wg Calls: lu.ma/ipvm

Slide 175

Slide 175

Join Us โœŠ Connect Community: github.com/ipvm-wg Calls: lu.ma/ipvm

Slide 176

Slide 176

github.com/ipvm-wg lu.ma/ipvm ๐ŸŽ‰ รพank you, IPFS รพing ๐Ÿ‡ง๐Ÿ‡ช brooklyn@fission.codes discord.gg/fissioncodes github.com/expede