Adjust 'Program' to have a graph and basic blocks

Signed-off-by: Danila Fedorin <danila.fedorin@gmail.com>
This commit is contained in:
2024-04-13 13:39:15 -07:00
parent ba1c9b3ec8
commit 4fe0d147fa
2 changed files with 47 additions and 23 deletions

View File

@@ -72,3 +72,9 @@ data Pairwise {a} {b} {c} {A : Set a} {B : Set b} (P : A → B → Set c) : List
infixr 2 _⊗_
data _⊗_ {a p q} {A : Set a} (P : A → Set p) (Q : A → Set q) : A → Set (a ⊔ℓ p ⊔ℓ q) where
_,_ : ∀ {val : A} → P val → Q val → (P ⊗ Q) val
proj₁ : ∀ {a p q} {A : Set a} {P : A → Set p} {Q : A → Set q} {a : A} → (P ⊗ Q) a → P a
proj₁ (v , _) = v
proj₂ : ∀ {a p q} {A : Set a} {P : A → Set p} {Q : A → Set q} {a : A} → (P ⊗ Q) a → Q a
proj₂ (_ , v) = v