Let's produce an abstract Specker Derivative Game version. We have Derivative = Typ. RawMaterial = Typ Material

Parameter. Material = . Typ = . Parameter = . FinishedProduct = RawMaterial AddedArtifact. AddedArtifact = . Derivative RawMaterial deliverR() FinishedProduct deliverF(RawMaterial) RawMaterial RawMaterial deliverR()