Frame.primitive_write_read: def of bendtorch-core@0.1.0.0 Import: import bendtorch-core@0.1.0.0/src/storage/frame.bend as Frame Lines 111-122 of bendtorch-core@0.1.0.0/src/storage/frame.bend: https://jend.leeeet.dev/read.txt?path=bendtorch-core@0.1.0.0/src/storage/frame.bend&start_line=111&end_line=122 import Base import bendtorch-core@0.1.0.0/src/storage/model.bend as Model import bendtorch-core@0.1.0.0/src/storage/refinement.bend as Refinement def primitive_write_read(-T: Data, +d: Nat, array: Array, +i: U32, +value: T, valid: Model.Balanced(T, d, array)) -> {Model.observe(T, d, Array.set(T, array, i, value), Refinement.route(d, i)) == Some{value} : Maybe<&2, T>}: %Equal.sym(Maybe<&2, T>, Model.observe(T, d, Array.set(T, array, i, value), Refinement.route(d, i)), Model.select(T, Model.same(d, Refinement.route(d, i), Refinement.route(d, i)), value, Model.observe(T, d, array, Refinement.route(d, i))), primitive_update_frame(T, d, array, i, Refinement.route(d, i), value, valid)) : {_ == Some{value} : Maybe<&2, T>} %Equal.sym(Bool, Model.same(d, Refinement.route(d, i), Refinement.route(d, i)), True{}, path_self_same(d, Refinement.route(d, i))) : {Model.select(T, _, value, Model.observe(T, d, array, Refinement.route(d, i))) == Some{value} : Maybe<&2, T>} {==} Uses (14): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Array https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Array.set https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.sym https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Maybe https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=bendtorch-core@0.1.0.0/src/storage/frame.bend&name=path_self_same https://jend.leeeet.dev/definition.txt?path=bendtorch-core@0.1.0.0/src/storage/frame.bend&name=primitive_update_frame https://jend.leeeet.dev/definition.txt?path=bendtorch-core@0.1.0.0/src/storage/model.bend&name=Balanced https://jend.leeeet.dev/definition.txt?path=bendtorch-core@0.1.0.0/src/storage/model.bend&name=observe https://jend.leeeet.dev/definition.txt?path=bendtorch-core@0.1.0.0/src/storage/model.bend&name=same https://jend.leeeet.dev/definition.txt?path=bendtorch-core@0.1.0.0/src/storage/model.bend&name=select https://jend.leeeet.dev/definition.txt?path=bendtorch-core@0.1.0.0/src/storage/refinement.bend&name=route