phino-0.0.157: test-resources/evaluate-packs/tells-why-a-join-fabricated-nothing-of-a-side-that-is-no-formation.yaml
# SPDX-FileCopyrightText: Copyright (c) 2025 Objectionary.com
# SPDX-License-Identifier: MIT
---
# yamllint disable rule:line-length
# The 'rewrite' line takes 'Ξ¦.k' out of the formation the left side morphs to,
# and the join compares that formation with the dispatch. They differ as a
# whole, so no attribute tells where. The block names 'L_join' under
# 'otherwise', but the right side is no formation, so nothing is fabricated of
# the two, and the comment of 'diverged' says so (#2043).
symbolic: |
- Ξ»: L_fork
dataize:
πΏ1: $.c
morph:
π1: $.a
rewrite:
π2:
of: π1
rules:
- name: unwrap
pattern: β¦ Ο β¦ π1 β§
result: π1
join:
on: πΏ1
left: π1
right: π2
otherwise: L_join
location: 'Q.y'
partial: true
input: 'β¦ k β¦ β¦β§, y β¦ β¦ c β¦ β¦ Ξ» β€ π1 β§, a β¦ β¦ Ο β¦ Ξ¦.k β§, Ξ» β€ L_fork β§.Ο β§'
result: 'β¦ c β¦ β¦ Ξ» β€ π1 β§, a β¦ β¦ Ο β¦ Ξ¦.k β§, Ξ» β€ L_fork β§.Ο'
protocol: |
π(Ξ¦.y):
πΌ(L_fork):
πΏ1Β·1 := π»(π1:Ξ») # π»(ΞΎ.c)
π1Β·1 := Ξ¦.k:Ο # π(ΞΎ.a)
π2Β·1 := Ξ¦.k # rewrite(π1)
diverged π1Β·1 vs π2Β·1 # the right side is no formation