packages feed

phino-0.0.152: test-resources/evaluate-packs/reduces-a-carried-symbol-through-morphing.yaml

# SPDX-FileCopyrightText: Copyright (c) 2025 Objectionary.com
# SPDX-License-Identifier: MIT
---
# A 'morph' operand of the firing is a symbol the program already carried:
# 𝕄 hands it back the way it found it, since a symbol is already a normal form
# and there is nothing under it to reduce. The answer then mints after it.
symbolic: |
  - Ξ»: L_keep
    morph:
      𝑛1: $.x
    𝑛: ⟦ z ↦ ⟦ Ξ» ‍ 𝜎 ⟧ ⟧
location: 'Q.y'
input: '⟦ y ↦ ⟦ x ↦ ⟦ Ξ» ‍ 𝜎4 ⟧, Ξ» ‍ L_keep ⟧.z ⟧'
result: '𝜎5:λ'
protocol: |
  𝕄(Ξ¦.y):
    𝔼(L_keep):
      𝑛1Β·1 := 𝜎4:Ξ»  # 𝕄(ΞΎ.x)
      𝑛·1Β·1 := 𝜎5:Ξ»:z  # 𝑛
      𝑛·1Β·2 := 𝜎5:Ξ»:z  # 𝕄(𝑛·1Β·1)