phino-0.0.82: resources/dataization.yaml
# SPDX-FileCopyrightText: Copyright (c) 2025 Objectionary.com
# SPDX-License-Identifier: MIT
---
# Dataization π» β applied top-to-bottom, first matching clause wins. The input
# is always a normal form: a non-NF expression matches no clause.
- name: delta
description: 'π»(β¦π΅1, Ξ β€ Ξ΄, π΅2β§) βΏ Ξ΄'
match: β¦π΅1, Ξ β€ Ξ΄, π΅2β§
then: Ξ΄
- name: box
description: 'π»(β¦π΅1, Ο β¦ e, π΅2β§) βΏ π»(π©(π(e))) if [Ξ, Ξ»] β© (π΅1 βͺ π΅2) = β
'
match: β¦π΅1, Ο β¦ π, π΅2β§
where:
- meta: π1
function: contextualize
args:
- π
- β¦π΅1, Ο β¦ π, π΅2β§
when:
disjoint:
- [Ξ, Ξ»]
- [π΅1, π΅2]
then:
dataize:
normalize: π1
- name: fire
description: 'π»(β¦π΅1, Ξ» β€ F, π΅2β§) βΏ π»(π©(πΌ(β¦π΅1, Ξ» β€ F, π΅2β§)))'
match: β¦π΅1, Ξ» β€ !F, π΅2β§
where:
- meta: π
function: lambda
args:
- β¦π΅1, Ξ» β€ !F, π΅2β§
then:
dataize:
normalize: π
- name: none
description: 'π»(β¦π΅β§) βΏ nothing'
match: β¦π΅β§
then: nothing
- name: bott
description: 'π»(β₯) βΏ nothing'
match: β₯
then: nothing
- name: norm
description: 'π»(n) βΏ π»(π(n)) otherwise'
match: π
then:
dataize:
morph: π