injection hp with hc ho
net✝ : Network
exec : Executable net✝
reactor : ReactorId net✝
reaction : Class.Reaction (Path.class reactor)
p' : reaction.val.portSources.vars
sub : (subinterface (Path.class reactor) Reactor.InterfaceKind.outputs).vars
c : Child (Path.class reactor)
output : (Class.interface (Child.class c) Reactor.InterfaceKind.outputs).vars
c' : Child (Path.class reactor)
output' : ((fun child => Class.interface (Child.class child) Reactor.InterfaceKind.outputs) c').vars
h : Activates exec (Reaction.Trigger.port { reactor := Path.extend reactor c', port := cast _ output' })
ho : Interface.Subscheme.coe p' = Sum.inr { fst := c', snd := output' }
hp : { fst := c', snd := output' } = { fst := c, snd := output }
⊢ ∃ v, cast _ (interface exec (Path.extend reactor c) Reactor.InterfaceKind.outputs (cast _ output)) = some v
net✝ : Network
exec : Executable net✝
reactor : ReactorId net✝
reaction : Class.Reaction (Path.class reactor)
p' : reaction.val.portSources.vars
sub : (subinterface (Path.class reactor) Reactor.InterfaceKind.outputs).vars
c : Child (Path.class reactor)
output : (Class.interface (Child.class c) Reactor.InterfaceKind.outputs).vars
c' : Child (Path.class reactor)
output' : ((fun child => Class.interface (Child.class child) Reactor.InterfaceKind.outputs) c').vars
h : Activates exec (Reaction.Trigger.port { reactor := Path.extend reactor c', port := cast _ output' })
ho✝ : Interface.Subscheme.coe p' = Sum.inr { fst := c', snd := output' }
hc : c' = c
ho : HEq output' output
⊢ ∃ v, cast _ (interface exec (Path.extend reactor c) Reactor.InterfaceKind.outputs (cast _ output)) = some v