@@ -365,14 +365,29 @@ instance
365
365
366
366
data _⇑_ : LeiosState → LeiosState → Type where
367
367
368
- UpdateIB : ∀ {s ib} → let open LeiosState s renaming (FFDState to ffds) in
369
- s ⇑ record s { FFDState = record ffds { inIBs = ib ∷ FFDState.inIBs ffds } }
370
-
371
- UpdateEB : ∀ {s eb} → let open LeiosState s renaming (FFDState to ffds) in
372
- s ⇑ record s { FFDState = record ffds { inEBs = eb ∷ FFDState.inEBs ffds } }
373
-
374
- UpdateVT : ∀ {s vt} → let open LeiosState s renaming (FFDState to ffds) in
375
- s ⇑ record s { FFDState = record ffds { inVTs = vt ∷ FFDState.inVTs ffds } }
368
+ UpdateIB : ∀ {s h b ffds'} →
369
+ let open LeiosState s renaming (FFDState to ffds)
370
+ ib = FFD.Send (ibHeader h) (just (ibBody b))
371
+ in
372
+ ∙ ffds FFD.-⟦ ib / FFD.SendRes ⟧⇀ ffds'
373
+ ─────────────────────────────────────
374
+ s ⇑ record s { FFDState = ffds' }
375
+
376
+ UpdateEB : ∀ {s h ffds'} →
377
+ let open LeiosState s renaming (FFDState to ffds)
378
+ eb = FFD.Send (ebHeader h) nothing
379
+ in
380
+ ∙ ffds FFD.-⟦ eb / FFD.SendRes ⟧⇀ ffds'
381
+ ─────────────────────────────────────
382
+ s ⇑ record s { FFDState = ffds' }
383
+
384
+ UpdateVT : ∀ {s h ffds'} →
385
+ let open LeiosState s renaming (FFDState to ffds)
386
+ vt = FFD.Send (vHeader h) nothing
387
+ in
388
+ ∙ ffds FFD.-⟦ vt / FFD.SendRes ⟧⇀ ffds'
389
+ ─────────────────────────────────────
390
+ s ⇑ record s { FFDState = ffds' }
376
391
377
392
data LocalStep : LeiosState → LeiosState → Type where
378
393
0 commit comments