<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<org.eventb.core.scMachineFile org.eventb.core.accurate="true" org.eventb.core.configuration="org.eventb.core.fwd">
<org.eventb.core.scRefinesMachine name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.refinesMachine#internal_element1"/>
<org.eventb.core.scSeesContext name="(" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_3_CO.bcc" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.seesContext#sees1"/>
<org.eventb.core.scInternalContext name="ATM_TD_3_CO"/>
<org.eventb.core.scSeesContext name="CSEES0" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2_CO.bcc" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.seesContext#sees1"/>
<org.eventb.core.scInternalContext name="ATM_TD_2_CO"/>
<org.eventb.core.scSeesContext name="CSEES1" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_1_CO.bcc" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1.bum|org.eventb.core.machineFile#ATM_TD_1|org.eventb.core.seesContext#sees1"/>
<org.eventb.core.scInternalContext name="ATM_TD_1_CO">
<org.eventb.core.scAxiom name="'" org.eventb.core.label="Deposit_CO1.MIN_CASH.type" org.eventb.core.predicate="MIN_CASH∈ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1_CO.buc|org.eventb.core.contextFile#ATM_TD_1_CO|org.eventb.core.axiom#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scAxiom name="(" org.eventb.core.label="Deposit_CO1.MAX_CASH.type" org.eventb.core.predicate="MAX_CASH∈ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1_CO.buc|org.eventb.core.contextFile#ATM_TD_1_CO|org.eventb.core.axiom#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scAxiom name=")" org.eventb.core.label="Deposit_CO1.Axiom1" org.eventb.core.predicate="MAX_CASH&gt;MIN_CASH" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1_CO.buc|org.eventb.core.contextFile#ATM_TD_1_CO|org.eventb.core.axiom#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scConstant name="MAX_CASH" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1_CO.buc|org.eventb.core.contextFile#ATM_TD_1_CO|org.eventb.core.constant#internal_element2" org.eventb.core.type="ℤ"/>
<org.eventb.core.scConstant name="MIN_CASH" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1_CO.buc|org.eventb.core.contextFile#ATM_TD_1_CO|org.eventb.core.constant#internal_element1" org.eventb.core.type="ℤ"/>
</org.eventb.core.scInternalContext>
<org.eventb.core.scSeesContext name="CSEES2" org.eventb.core.scTarget="/ATMintegralRefined/ATM_CO.bcc" org.eventb.core.source="/ATMintegralRefined/ATM_TD_0.bum|org.eventb.core.machineFile#ATM_TD_0|org.eventb.core.seesContext#_RPZksD24EeCAYsu3bd3gpA"/>
<org.eventb.core.scInternalContext name="ATM_CO">
<org.eventb.core.scCarrierSet name="ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_CO.buc|org.eventb.core.contextFile#ATM_CO|org.eventb.core.carrierSet#_SrAPADqiEeCEXI9UeGRwrw" org.eventb.core.type="ℙ(ACCOUNT)"/>
<org.eventb.core.scCarrierSet name="ATM" org.eventb.core.source="/ATMintegralRefined/ATM_CO.buc|org.eventb.core.contextFile#ATM_CO|org.eventb.core.carrierSet#_ol_YAT21EeCAYsu3bd3gpA" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scCarrierSet name="CARD" org.eventb.core.source="/ATMintegralRefined/ATM_CO.buc|org.eventb.core.contextFile#ATM_CO|org.eventb.core.carrierSet#_ol_YAD21EeCAYsu3bd3gpA" org.eventb.core.type="ℙ(CARD)"/>
</org.eventb.core.scInternalContext>
<org.eventb.core.scInvariant name="ATM_CP" org.eventb.core.label="inv1" org.eventb.core.predicate="bal∈ACCOUNT ⇸ ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_0.bum|org.eventb.core.machineFile#ATM_TD_0|org.eventb.core.invariant#__COKMDqkEeCEXI9UeGRwrw" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_CQ" org.eventb.core.label="inv2" org.eventb.core.predicate="cardAcct∈CARD ⇸ ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_0.bum|org.eventb.core.machineFile#ATM_TD_0|org.eventb.core.invariant#_RPaLwD24EeCAYsu3bd3gpA" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_CR" org.eventb.core.label="inv3" org.eventb.core.predicate="cardInAtm∈ATM ⇸ CARD" org.eventb.core.source="/ATMintegralRefined/ATM_TD_0.bum|org.eventb.core.machineFile#ATM_TD_0|org.eventb.core.invariant#_RPaLwT24EeCAYsu3bd3gpA" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_CS" org.eventb.core.label="inv4" org.eventb.core.predicate="validCard⊆CARD" org.eventb.core.source="/ATMintegralRefined/ATM_TD_0.bum|org.eventb.core.machineFile#ATM_TD_0|org.eventb.core.invariant#_RPaLwj24EeCAYsu3bd3gpA" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_CT" org.eventb.core.label="inv5" org.eventb.core.predicate="∀c⦂CARD·c∈validCard⇒c∈ran(cardInAtm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_0.bum|org.eventb.core.machineFile#ATM_TD_0|org.eventb.core.invariant#__CQmeDqkEeCEXI9UeGRwry" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_1_CP" org.eventb.core.label="BalTransfer_1.inv9" org.eventb.core.predicate="transferOkA∈ℙ(ATM)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1.bum|org.eventb.core.machineFile#ATM_TD_1|org.eventb.core.invariant#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_1_CQ" org.eventb.core.label="BalTransfer_1.in10" org.eventb.core.predicate="transferFailA∈ℙ(ATM)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1.bum|org.eventb.core.machineFile#ATM_TD_1|org.eventb.core.invariant#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_1_CR" org.eventb.core.label="BalTransfer_1.inv10" org.eventb.core.predicate="cardInAtm∈ATM ⇸ CARD" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1.bum|org.eventb.core.machineFile#ATM_TD_1|org.eventb.core.invariant#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_1_CS" org.eventb.core.label="Deposit_1.inv2" org.eventb.core.predicate="atmCash∈ATM → ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1.bum|org.eventb.core.machineFile#ATM_TD_1|org.eventb.core.invariant#internal_element4" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CP" org.eventb.core.label="BalTransfer_2.inv1" org.eventb.core.predicate="transT∈ℙ(ATM)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CQ" org.eventb.core.label="BalTransfer_2.inv3" org.eventb.core.predicate="reqTransfer∈ℙ(transT)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CR" org.eventb.core.label="BalTransfer_2.inv6" org.eventb.core.predicate="respTransferOk∈ℙ(transT)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CS" org.eventb.core.label="BalTransfer_2.inv7" org.eventb.core.predicate="respTransferFail∈ℙ(transT)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element4" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CT" org.eventb.core.label="BalTransfer_2.inv8" org.eventb.core.predicate="trAmount∈ATM ⇸ ℕ1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element5" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CU" org.eventb.core.label="BalTransfer_2.inv9" org.eventb.core.predicate="srcAccBalAtm∈ACCOUNT ⇸ ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element6" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CV" org.eventb.core.label="BalTransfer_2.inv10" org.eventb.core.predicate="destAccBalAtm∈ACCOUNT ⇸ ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element7" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CW" org.eventb.core.label="BalTransfer_2.inv11" org.eventb.core.predicate="transOkAtm∈ATM ⇸ BOOL" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element8" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CX" org.eventb.core.label="BalTransfer_2.inv12" org.eventb.core.predicate="srcAcc∈ATM ⇸ ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element9" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CY" org.eventb.core.label="BalTransfer_2.inv13" org.eventb.core.predicate="destAcc∈ATM ⇸ ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element10" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_CZ" org.eventb.core.label="BalTransfer_2.inv15" org.eventb.core.predicate="transferOk⊆transferOkA" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element11" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_C[" org.eventb.core.label="BalTransfer_2.inv16" org.eventb.core.predicate="transferFail⊆transferFailA" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element12" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_C\" org.eventb.core.label="BalTransfer_2.inv17" org.eventb.core.predicate="∀c⦂CARD·c∈ran(cardInAtm)⇒c∈validCard" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element13" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_C]" org.eventb.core.label="BalTransfer_2.inv18" org.eventb.core.predicate="partition(transT,reqTransfer,transferOk,transferFail,respTransferOk,respTransferFail)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element14" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_C^" org.eventb.core.label="inv1" org.eventb.core.predicate="transD∈ℙ(ATM)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element25" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_C_" org.eventb.core.label="Deposit_2·inv5" org.eventb.core.predicate="reqDep∈ℙ(transD)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element15" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_C`" org.eventb.core.label="Deposit_2.inv6" org.eventb.core.predicate="respDep∈ℙ(transD)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element16" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_Ca" org.eventb.core.label="Deposit_2.inv7" org.eventb.core.predicate="processedDep∈ℙ(ATM)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element17" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_Cb" org.eventb.core.label="Deposit_2.inv8" org.eventb.core.predicate="atmDepAm∈ATM ⇸ ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element18" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_Cc" org.eventb.core.label="Deposit_2.inv9" org.eventb.core.predicate="partition(transD,reqDep,respDep)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element19" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_Cd" org.eventb.core.label="Deposit_2.inv10" org.eventb.core.predicate="atmCashA∈ATM → ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element20" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_Ce" org.eventb.core.label="Deposit_2.inv11" org.eventb.core.predicate="accBalOnAtm∈ACCOUNT ⇸ ℕ" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element21" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_2_Cf" org.eventb.core.label="Deposit_2.inv12" org.eventb.core.predicate="∀c⦂CARD·c∈ran(cardInAtm)⇒c∈validCard" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.invariant#internal_element22" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CP" org.eventb.core.label="BalTransfer_3.inv1" org.eventb.core.predicate="sendReqTransfer∈ℙ(reqTransfer)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CQ" org.eventb.core.label="BalTransfer_3.inv2" org.eventb.core.predicate="recvReqTransfer∈ℙ(reqTransfer)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CR" org.eventb.core.label="BalTransfer_3.inv3" org.eventb.core.predicate="sendRespTransferOk∈ℙ(respTransferOk)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CS" org.eventb.core.label="BalTransfer_3.inv4" org.eventb.core.predicate="recvRespTransferOk∈ℙ(respTransferOk)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element4" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CT" org.eventb.core.label="BalTransfer_3.inv5" org.eventb.core.predicate="sendRespTransferFail∈ℙ(respTransferFail)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element5" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CU" org.eventb.core.label="BalTransfer_3.inv6" org.eventb.core.predicate="recvRespTransferFail∈ℙ(respTransferFail)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element6" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CV" org.eventb.core.label="BalTransfer_3.inv7" org.eventb.core.predicate="partition(reqTransfer,sendReqTransfer,recvReqTransfer)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element7" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CW" org.eventb.core.label="BalTransfer_3.inv8" org.eventb.core.predicate="partition(respTransferOk,sendRespTransferOk,recvRespTransferOk)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element8" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CX" org.eventb.core.label="BalTransfer_3.inv9" org.eventb.core.predicate="partition(respTransferFail,sendRespTransferFail,recvRespTransferFail)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element9" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CY" org.eventb.core.label="Deposit_3.inv1" org.eventb.core.predicate="sendReqDep∈ℙ(reqDep)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element10" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_CZ" org.eventb.core.label="Deposit_3.inv2" org.eventb.core.predicate="recvReqDep∈ℙ(reqDep)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element11" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_C[" org.eventb.core.label="Deposit_3.inv3" org.eventb.core.predicate="sendRespDep∈ℙ(respDep)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element12" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_C\" org.eventb.core.label="Deposit_3.inv4" org.eventb.core.predicate="recvRespDep∈ℙ(respDep)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element13" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_C]" org.eventb.core.label="Deposit_3.inv5" org.eventb.core.predicate="partition(reqDep,sendReqDep,recvReqDep)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element14" org.eventb.core.theorem="false"/>
<org.eventb.core.scInvariant name="ATM_TD_3_C^" org.eventb.core.label="Deposit_3.inv6" org.eventb.core.predicate="partition(respDep,sendRespDep,recvRespDep)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.invariant#internal_element15" org.eventb.core.theorem="false"/>
<org.eventb.core.scVariable name="accBalOnAtm" org.eventb.core.abstract="true" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.variable#internal_element23" org.eventb.core.type="ℙ(ACCOUNT×ℤ)"/>
<org.eventb.core.scVariable name="atmCash" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element18" org.eventb.core.type="ℙ(ATM×ℤ)"/>
<org.eventb.core.scVariable name="atmCashA" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element22" org.eventb.core.type="ℙ(ATM×ℤ)"/>
<org.eventb.core.scVariable name="atmDepAm" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element21" org.eventb.core.type="ℙ(ATM×ℤ)"/>
<org.eventb.core.scVariable name="bal" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element1" org.eventb.core.type="ℙ(ACCOUNT×ℤ)"/>
<org.eventb.core.scVariable name="cardAcct" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element3" org.eventb.core.type="ℙ(CARD×ACCOUNT)"/>
<org.eventb.core.scVariable name="cardInAtm" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element4" org.eventb.core.type="ℙ(ATM×CARD)"/>
<org.eventb.core.scVariable name="destAcc" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element10" org.eventb.core.type="ℙ(ATM×ACCOUNT)"/>
<org.eventb.core.scVariable name="destAccBalAtm" org.eventb.core.abstract="true" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.variable#internal_element11" org.eventb.core.type="ℙ(ACCOUNT×ℤ)"/>
<org.eventb.core.scVariable name="processedDep" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element20" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="recvReqDep" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element24" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="recvReqTransfer" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element13" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="recvRespDep" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element26" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="recvRespTransferFail" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element17" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="recvRespTransferOk" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element15" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="reqDep" org.eventb.core.abstract="true" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.variable#internal_element18" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="reqTransfer" org.eventb.core.abstract="true" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.variable#internal_element4" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="respDep" org.eventb.core.abstract="true" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.variable#internal_element19" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="respTransferFail" org.eventb.core.abstract="true" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.variable#internal_element9" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="respTransferOk" org.eventb.core.abstract="true" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.variable#internal_element8" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="sendReqDep" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element23" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="sendReqTransfer" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element12" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="sendRespDep" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element25" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="sendRespTransferFail" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element16" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="sendRespTransferOk" org.eventb.core.abstract="false" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element14" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="srcAcc" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element9" org.eventb.core.type="ℙ(ATM×ACCOUNT)"/>
<org.eventb.core.scVariable name="srcAccBalAtm" org.eventb.core.abstract="true" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_2.bum|org.eventb.core.machineFile#ATM_TD_2|org.eventb.core.variable#internal_element10" org.eventb.core.type="ℙ(ACCOUNT×ℤ)"/>
<org.eventb.core.scVariable name="trAmount" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element7" org.eventb.core.type="ℙ(ATM×ℤ)"/>
<org.eventb.core.scVariable name="transD" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element19" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="transOkAtm" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element8" org.eventb.core.type="ℙ(ATM×BOOL)"/>
<org.eventb.core.scVariable name="transT" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element11" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="transferFail" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element6" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="transferFailA" org.eventb.core.abstract="false" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1.bum|org.eventb.core.machineFile#ATM_TD_1|org.eventb.core.variable#internal_element5" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="transferOk" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element5" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="transferOkA" org.eventb.core.abstract="false" org.eventb.core.concrete="false" org.eventb.core.source="/ATMintegralRefined/ATM_TD_1.bum|org.eventb.core.machineFile#ATM_TD_1|org.eventb.core.variable#internal_element4" org.eventb.core.type="ℙ(ATM)"/>
<org.eventb.core.scVariable name="validCard" org.eventb.core.abstract="true" org.eventb.core.concrete="true" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.variable#internal_element2" org.eventb.core.type="ℙ(CARD)"/>
<org.eventb.core.scEvent name="sendRespTransferFaim" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="INITIALISATION" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFaim" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1"/>
<org.eventb.core.scAction name="(" org.eventb.core.assignment="cardInAtm ≔ ∅ ⦂ ℙ(ATM×CARD)" org.eventb.core.label="Deposit_3.INITIALISATION.act7" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name=")" org.eventb.core.assignment="cardAcct ≔ ∅ ⦂ ℙ(CARD×ACCOUNT)" org.eventb.core.label="Deposit_3.INITIALISATION.act8" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="*" org.eventb.core.assignment="transOkAtm ≔ ∅ ⦂ ℙ(ATM×BOOL)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act21" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element3"/>
<org.eventb.core.scAction name="+" org.eventb.core.assignment="srcAcc ≔ ∅ ⦂ ℙ(ATM×ACCOUNT)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act22" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element4"/>
<org.eventb.core.scAction name="," org.eventb.core.assignment="destAcc ≔ ∅ ⦂ ℙ(ATM×ACCOUNT)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act23" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element5"/>
<org.eventb.core.scAction name="-" org.eventb.core.assignment="recvRespTransferOk ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act24" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element6"/>
<org.eventb.core.scAction name="." org.eventb.core.assignment="recvRespTransferFail ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act26" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element7"/>
<org.eventb.core.scAction name="/" org.eventb.core.assignment="atmCashA ≔ ATM × {0}" org.eventb.core.label="Deposit_3.INITIALISATION.act21" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element8"/>
<org.eventb.core.scAction name="0" org.eventb.core.assignment="sendRespTransferFail ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act25" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element9"/>
<org.eventb.core.scAction name="1" org.eventb.core.assignment="recvRespDep ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="Deposit_3.INITIALISATION.act20" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element10"/>
<org.eventb.core.scAction name="2" org.eventb.core.assignment="recvReqTransfer ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act28" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element11"/>
<org.eventb.core.scAction name="3" org.eventb.core.assignment="transT ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act30" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element12"/>
<org.eventb.core.scAction name="4" org.eventb.core.assignment="sendReqTransfer ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act27" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element13"/>
<org.eventb.core.scAction name="5" org.eventb.core.assignment="sendRespTransferOk ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act29" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element14"/>
<org.eventb.core.scAction name="6" org.eventb.core.assignment="validCard ≔ ∅ ⦂ ℙ(CARD)" org.eventb.core.label="Deposit_3.INITIALISATION.act6" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element15"/>
<org.eventb.core.scAction name="7" org.eventb.core.assignment="atmCash ≔ ATM × {0}" org.eventb.core.label="Deposit_3.INITIALISATION.act4" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element16"/>
<org.eventb.core.scAction name="8" org.eventb.core.assignment="bal ≔ ∅ ⦂ ℙ(ACCOUNT×ℤ)" org.eventb.core.label="Deposit_3.INITIALISATION.act3" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element17"/>
<org.eventb.core.scAction name="9" org.eventb.core.assignment="transferFail ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act15" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element18"/>
<org.eventb.core.scAction name=":" org.eventb.core.assignment="transferOk ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act14" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element19"/>
<org.eventb.core.scAction name=";" org.eventb.core.assignment="trAmount ≔ ∅ ⦂ ℙ(ATM×ℤ)" org.eventb.core.label="BalTransfer_3.INITIALISATION.act18" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element20"/>
<org.eventb.core.scAction name="=" org.eventb.core.assignment="sendReqDep ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="Deposit_3.INITIALISATION.act17" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element21"/>
<org.eventb.core.scAction name="&gt;" org.eventb.core.assignment="sendRespDep ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="Deposit_3.INITIALISATION.act19" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element22"/>
<org.eventb.core.scAction name="?" org.eventb.core.assignment="recvReqDep ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="Deposit_3.INITIALISATION.act18" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element23"/>
<org.eventb.core.scAction name="@" org.eventb.core.assignment="transD ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="Deposit_3.INITIALISATION.act12" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element24"/>
<org.eventb.core.scAction name="A" org.eventb.core.assignment="processedDep ≔ ∅ ⦂ ℙ(ATM)" org.eventb.core.label="Deposit_3.INITIALISATION.act15" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element25"/>
<org.eventb.core.scAction name="B" org.eventb.core.assignment="atmDepAm ≔ ∅ ⦂ ℙ(ATM×ℤ)" org.eventb.core.label="Deposit_3.INITIALISATION.act14" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element1|org.eventb.core.action#internal_element26"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFain" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="SendReqTransfer" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFain" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd11" org.eventb.core.predicate="a∉transT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name=")" org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd1" org.eventb.core.predicate="src_ac∈ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="*" org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd7" org.eventb.core.predicate="a∈ATM" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="+" org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd6" org.eventb.core.predicate="src_ac≠dest_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element4" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="," org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd8" org.eventb.core.predicate="a∈dom(cardInAtm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element6" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="-" org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd9" org.eventb.core.predicate="c=cardInAtm(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element5" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="." org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd3" org.eventb.core.predicate="c∈validCard" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element7" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="/" org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd2" org.eventb.core.predicate="dest_ac∈ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element8" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="0" org.eventb.core.label="BalTransfer_3.SendReqTransfer.grd5" org.eventb.core.predicate="am∈ℕ1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.guard#internal_element9" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.parameter#internal_element5" org.eventb.core.type="ATM"/>
<org.eventb.core.scParameter name="am" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.parameter#internal_element4" org.eventb.core.type="ℤ"/>
<org.eventb.core.scParameter name="c" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.parameter#internal_element1" org.eventb.core.type="CARD"/>
<org.eventb.core.scParameter name="dest_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.parameter#internal_element3" org.eventb.core.type="ACCOUNT"/>
<org.eventb.core.scParameter name="src_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.parameter#internal_element2" org.eventb.core.type="ACCOUNT"/>
<org.eventb.core.scAction name="dest_ad" org.eventb.core.assignment="trAmount ≔ trAmount{a ↦ am}" org.eventb.core.label="BalTransfer_3.SendReqTransfer.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="dest_ae" org.eventb.core.assignment="destAcc ≔ destAcc{a ↦ dest_ac}" org.eventb.core.label="BalTransfer_3.SendReqTransfer.act4" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="dest_af" org.eventb.core.assignment="srcAcc ≔ srcAcc{a ↦ src_ac}" org.eventb.core.label="BalTransfer_3.SendReqTransfer.act3" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.action#internal_element3"/>
<org.eventb.core.scAction name="dest_ag" org.eventb.core.assignment="sendReqTransfer ≔ sendReqTransfer∪{a}" org.eventb.core.label="BalTransfer_3.SendReqTransfer.act6" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.action#internal_element4"/>
<org.eventb.core.scAction name="dest_ah" org.eventb.core.assignment="transT ≔ transT∪{a}" org.eventb.core.label="BalTransfer_3.SendReqTransfer.act5" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element2|org.eventb.core.action#internal_element5"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaio" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="RecvReqTransfer" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element3">
<org.eventb.core.scGuard name="'" org.eventb.core.label="BalTransfer_3.RecvReqTransfer.grd9" org.eventb.core.predicate="a∈sendReqTransfer" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element3|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element3|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="sendReqTransfer ≔ sendReqTransfer ∖ {a}" org.eventb.core.label="BalTransfer_3.RecvReqTransfer.act5" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element3|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="recvReqTransfer ≔ recvReqTransfer∪{a}" org.eventb.core.label="BalTransfer_3.RecvReqTransfer.act4" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element3|org.eventb.core.action#internal_element2"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaip" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="TransferOK" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFaio" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="BalTransfer_3.TransferOK.grd1" org.eventb.core.predicate="src_ac∈ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name=")" org.eventb.core.label="BalTransfer_3.TransferOK.grd2" org.eventb.core.predicate="dest_ac∈ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="*" org.eventb.core.label="BalTransfer_3.TransferOK.grd13" org.eventb.core.predicate="a∈dom(trAmount)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element10" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="+" org.eventb.core.label="BalTransfer_3.TransferOK.grd16" org.eventb.core.predicate="am=trAmount(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="," org.eventb.core.label="BalTransfer_3.TransferOK.grd21" org.eventb.core.predicate="a∈dom(destAcc)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element5" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="-" org.eventb.core.label="BalTransfer_3.TransferOK.grd15" org.eventb.core.predicate="dest_ac=destAcc(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element4" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="." org.eventb.core.label="BalTransfer_3.TransferOK.grd11" org.eventb.core.predicate="a∈dom(cardInAtm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element8" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="/" org.eventb.core.label="BalTransfer_3.TransferOK.grd12" org.eventb.core.predicate="c=cardInAtm(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element6" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="0" org.eventb.core.label="BalTransfer_3.TransferOK.grd20" org.eventb.core.predicate="a∈dom(srcAcc)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element7" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="1" org.eventb.core.label="BalTransfer_3.TransferOK.grd14" org.eventb.core.predicate="src_ac=srcAcc(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element9" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="2" org.eventb.core.label="BalTransfer_3.TransferOK.grd24" org.eventb.core.predicate="a∈recvReqTransfer" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element11" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="3" org.eventb.core.label="BalTransfer_3.TransferOK.grd8" org.eventb.core.predicate="src_ac≠dest_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element12" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="4" org.eventb.core.label="BalTransfer_3.TransferOK.grd6" org.eventb.core.predicate="src_ac∈dom(bal)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element14" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="5" org.eventb.core.label="BalTransfer_3.TransferOK.grd9" org.eventb.core.predicate="am≤bal(src_ac)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element13" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="6" org.eventb.core.label="BalTransfer_3.TransferOK.grd7" org.eventb.core.predicate="dest_ac∈dom(bal)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element15" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="7" org.eventb.core.label="BalTransfer_3.TransferOK.grd4" org.eventb.core.predicate="c ↦ src_ac∈cardAcct" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element16" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="8" org.eventb.core.label="BalTransfer_3.TransferOK.grd5" org.eventb.core.predicate="am∈ℕ1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.guard#internal_element17" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.parameter#internal_element5" org.eventb.core.type="ATM"/>
<org.eventb.core.scParameter name="am" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.parameter#internal_element3" org.eventb.core.type="ℤ"/>
<org.eventb.core.scParameter name="c" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.parameter#internal_element4" org.eventb.core.type="CARD"/>
<org.eventb.core.scParameter name="dest_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.parameter#internal_element2" org.eventb.core.type="ACCOUNT"/>
<org.eventb.core.scParameter name="src_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ACCOUNT"/>
<org.eventb.core.scAction name="dest_ad" org.eventb.core.assignment="transferOk ≔ transferOk∪{a}" org.eventb.core.label="BalTransfer_3.TransferOK.act5" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="dest_ae" org.eventb.core.assignment="recvReqTransfer ≔ recvReqTransfer ∖ {a}" org.eventb.core.label="BalTransfer_3.TransferOK.act6" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="dest_af" org.eventb.core.assignment="bal ≔ bal{dest_ac ↦ bal(dest_ac)+am,src_ac ↦ bal(src_ac) − am}" org.eventb.core.label="BalTransfer_3.TransferOK.act1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element4|org.eventb.core.action#internal_element3"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaiq" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="SendRespTransferOk" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element5">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFaip" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element5|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="BalTransfer_3.SendRespTransferOk.grd2" org.eventb.core.predicate="a∈transferOk" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element5|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element5|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="transferOk ≔ transferOk ∖ {a}" org.eventb.core.label="BalTransfer_3.SendRespTransferOk.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element5|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="sendRespTransferOk ≔ sendRespTransferOk∪{a}" org.eventb.core.label="BalTransfer_3.SendRespTransferOk.act3" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element5|org.eventb.core.action#internal_element2"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFair" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="RecvRespTransferOk" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element6">
<org.eventb.core.scGuard name="'" org.eventb.core.label="BalTransfer_3.RecvRespTransferOk.grd1" org.eventb.core.predicate="a∈sendRespTransferOk" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element6|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element6|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="recvRespTransferOk ≔ recvRespTransferOk∪{a}" org.eventb.core.label="BalTransfer_3.RecvRespTransferOk.act1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element6|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="sendRespTransferOk ≔ sendRespTransferOk ∖ {a}" org.eventb.core.label="BalTransfer_3.RecvRespTransferOk.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element6|org.eventb.core.action#internal_element2"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFais" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="TransferFails" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFaiq" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="BalTransfer_3.TransferFails.grd6" org.eventb.core.predicate="src_ac∈dom(bal)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name=")" org.eventb.core.label="BalTransfer_3.TransferFails.grd5" org.eventb.core.predicate="am∈ℕ1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="*" org.eventb.core.label="BalTransfer_3.TransferFails.grd9" org.eventb.core.predicate="am&gt;bal(src_ac)∨c ↦ src_ac∉cardAcct" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="+" org.eventb.core.label="BalTransfer_3.TransferFails.grd13" org.eventb.core.predicate="a∈dom(trAmount)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element7" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="," org.eventb.core.label="BalTransfer_3.TransferFails.grd16" org.eventb.core.predicate="am=trAmount(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element4" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="-" org.eventb.core.label="BalTransfer_3.TransferFails.grd8" org.eventb.core.predicate="src_ac≠dest_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element5" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="." org.eventb.core.label="BalTransfer_3.TransferFails.grd7" org.eventb.core.predicate="dest_ac∈dom(bal)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element6" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="/" org.eventb.core.label="BalTransfer_3.TransferFails.grd11" org.eventb.core.predicate="a∈dom(cardInAtm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element14" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="0" org.eventb.core.label="BalTransfer_3.TransferFails.grd12" org.eventb.core.predicate="c=cardInAtm(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element8" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="1" org.eventb.core.label="BalTransfer_3.TransferFails.grd20" org.eventb.core.predicate="a∈dom(srcAcc)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element13" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="2" org.eventb.core.label="BalTransfer_3.TransferFails.grd21" org.eventb.core.predicate="a∈dom(destAcc)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element12" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="3" org.eventb.core.label="BalTransfer_3.TransferFails.grd15" org.eventb.core.predicate="dest_ac=destAcc(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element9" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="4" org.eventb.core.label="BalTransfer_3.TransferFails.grd14" org.eventb.core.predicate="src_ac=srcAcc(a)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element10" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="5" org.eventb.core.label="BalTransfer_3.TransferFails.grd22" org.eventb.core.predicate="a∈recvReqTransfer" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element11" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="6" org.eventb.core.label="BalTransfer_3.TransferFails.grd1" org.eventb.core.predicate="src_ac∈ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element15" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="7" org.eventb.core.label="BalTransfer_3.TransferFails.grd2" org.eventb.core.predicate="dest_ac∈ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.guard#internal_element16" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.parameter#internal_element5" org.eventb.core.type="ATM"/>
<org.eventb.core.scParameter name="am" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.parameter#internal_element3" org.eventb.core.type="ℤ"/>
<org.eventb.core.scParameter name="c" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.parameter#internal_element4" org.eventb.core.type="CARD"/>
<org.eventb.core.scParameter name="dest_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.parameter#internal_element2" org.eventb.core.type="ACCOUNT"/>
<org.eventb.core.scParameter name="src_ac" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ACCOUNT"/>
<org.eventb.core.scAction name="dest_ad" org.eventb.core.assignment="recvReqTransfer ≔ recvReqTransfer ∖ {a}" org.eventb.core.label="BalTransfer_3.TransferFails.act3" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="dest_ae" org.eventb.core.assignment="transferFail ≔ transferFail∪{a}" org.eventb.core.label="BalTransfer_3.TransferFails.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element7|org.eventb.core.action#internal_element2"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFait" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="SendRespTransferFail" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element8">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFair" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element8|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="BalTransfer_3.SendRespTransferFail.grd2" org.eventb.core.predicate="a∈transferFail" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element8|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element8|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="transferFail ≔ transferFail ∖ {a}" org.eventb.core.label="BalTransfer_3.SendRespTransferFail.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element8|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="sendRespTransferFail ≔ sendRespTransferFail∪{a}" org.eventb.core.label="BalTransfer_3.SendRespTransferFail.act3" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element8|org.eventb.core.action#internal_element2"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaiu" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="RecvRespTransferFail" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element9">
<org.eventb.core.scGuard name="'" org.eventb.core.label="BalTransfer_3.RecvRespTransferFail.grd1" org.eventb.core.predicate="a∈sendRespTransferFail" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element9|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element9|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="sendRespTransferFail ≔ sendRespTransferFail ∖ {a}" org.eventb.core.label="BalTransfer_3.RecvRespTransferFail.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element9|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="recvRespTransferFail ≔ recvRespTransferFail∪{a}" org.eventb.core.label="BalTransfer_3.RecvRespTransferFail.act1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element9|org.eventb.core.action#internal_element2"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaiv" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="TransferOKAtm" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element10">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFais" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element10|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="BalTransfer_3.TransferOKAtm.grd11" org.eventb.core.predicate="a∈recvRespTransferOk" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element10|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element10|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="transT ≔ transT ∖ {a}" org.eventb.core.label="BalTransfer_3.TransferOKAtm.act7" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element10|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="transOkAtm ≔ transOkAtm{a ↦ TRUE}" org.eventb.core.label="BalTransfer_3.TransferOKAtm.act1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element10|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="d" org.eventb.core.assignment="recvRespTransferOk ≔ recvRespTransferOk ∖ {a}" org.eventb.core.label="BalTransfer_3.TransferOKAtm.act6" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element10|org.eventb.core.action#internal_element3"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaiw" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="TransferFailsAtm" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element11">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFait" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element11|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="BalTransfer_3.TransferFailsAtm.grd11" org.eventb.core.predicate="a∈recvRespTransferFail" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element11|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element11|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="transOkAtm ≔ transOkAtm{a ↦ FALSE}" org.eventb.core.label="BalTransfer_3.TransferFailsAtm.act1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element11|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="transT ≔ transT ∖ {a}" org.eventb.core.label="BalTransfer_3.TransferFailsAtm.act7" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element11|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="d" org.eventb.core.assignment="recvRespTransferFail ≔ recvRespTransferFail ∖ {a}" org.eventb.core.label="BalTransfer_3.TransferFailsAtm.act6" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element11|org.eventb.core.action#internal_element3"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaix" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="sendReqDeposit" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFaiu" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="Deposit_3.sendReqDeposit.grd9" org.eventb.core.predicate="a∉transD" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name=")" org.eventb.core.label="Deposit_3.sendReqDeposit.grd2" org.eventb.core.predicate="am∈ℕ1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.guard#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="*" org.eventb.core.label="Deposit_3.sendReqDeposit.grd4" org.eventb.core.predicate="a∈dom(cardInAtm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.guard#internal_element6" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="+" org.eventb.core.label="Deposit_3.sendReqDeposit.grd5" org.eventb.core.predicate="cardInAtm(a)=c" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.guard#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="," org.eventb.core.label="Deposit_3.sendReqDeposit.grd6" org.eventb.core.predicate="c∈validCard" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.guard#internal_element4" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="-" org.eventb.core.label="Deposit_3.sendReqDeposit.grd3" org.eventb.core.predicate="c∈ran(cardInAtm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.guard#internal_element5" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.parameter#internal_element3" org.eventb.core.type="ATM"/>
<org.eventb.core.scParameter name="am" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.parameter#internal_element2" org.eventb.core.type="ℤ"/>
<org.eventb.core.scParameter name="c" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.parameter#internal_element1" org.eventb.core.type="CARD"/>
<org.eventb.core.scAction name="an" org.eventb.core.assignment="atmDepAm ≔ atmDepAm{a ↦ am}" org.eventb.core.label="Deposit_3.sendReqDeposit.act3" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="ao" org.eventb.core.assignment="transD ≔ transD∪{a}" org.eventb.core.label="Deposit_3.sendReqDeposit.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="ap" org.eventb.core.assignment="sendReqDep ≔ sendReqDep∪{a}" org.eventb.core.label="Deposit_3.sendReqDeposit.act4" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element12|org.eventb.core.action#internal_element3"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaiy" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="recvReqDeposit" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element13">
<org.eventb.core.scGuard name="'" org.eventb.core.label="Deposit_3.recvReqDeposit.grd1" org.eventb.core.predicate="a∈sendReqDep" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element13|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element13|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="recvReqDep ≔ recvReqDep∪{a}" org.eventb.core.label="Deposit_3.recvReqDeposit.act1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element13|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="sendReqDep ≔ sendReqDep ∖ {a}" org.eventb.core.label="Deposit_3.recvReqDeposit.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element13|org.eventb.core.action#internal_element2"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFaiz" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="depositB" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFaiv" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="Deposit_3.depositB.grd1" org.eventb.core.predicate="acc∈ACCOUNT" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name=")" org.eventb.core.label="Deposit_3.depositB.grd11" org.eventb.core.predicate="a∈dom(atmDepAm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element5" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="*" org.eventb.core.label="Deposit_3.depositB.grd12" org.eventb.core.predicate="atmDepAm(a)=am" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="+" org.eventb.core.label="Deposit_3.depositB.grd2" org.eventb.core.predicate="acc∈dom(bal)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="," org.eventb.core.label="Deposit_3.depositB.grd13" org.eventb.core.predicate="a∈recvReqDep" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element4" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="-" org.eventb.core.label="Deposit_3.depositB.grd7" org.eventb.core.predicate="a∈dom(atmCash)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element6" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="." org.eventb.core.label="Deposit_3.depositB.grd8" org.eventb.core.predicate="a∈dom(cardInAtm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element7" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="/" org.eventb.core.label="Deposit_3.depositB.grd9" org.eventb.core.predicate="cardInAtm(a)=c" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element8" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="0" org.eventb.core.label="Deposit_3.depositB.grd3" org.eventb.core.predicate="am∈ℕ1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element9" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="1" org.eventb.core.label="Deposit_3.depositB.grd5" org.eventb.core.predicate="c ↦ acc∈cardAcct" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element10" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="2" org.eventb.core.label="Deposit_3.depositB.grd6" org.eventb.core.predicate="a∈ATM" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.guard#internal_element11" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.parameter#internal_element4" org.eventb.core.type="ATM"/>
<org.eventb.core.scParameter name="acc" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ACCOUNT"/>
<org.eventb.core.scParameter name="am" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.parameter#internal_element2" org.eventb.core.type="ℤ"/>
<org.eventb.core.scParameter name="c" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.parameter#internal_element3" org.eventb.core.type="CARD"/>
<org.eventb.core.scAction name="acd" org.eventb.core.assignment="processedDep ≔ processedDep∪{a}" org.eventb.core.label="Deposit_3.depositB.act5" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="ace" org.eventb.core.assignment="bal ≔ bal{acc ↦ bal(acc)+am}" org.eventb.core.label="Deposit_3.depositB.act1" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="acf" org.eventb.core.assignment="atmCash ≔ atmCash{a ↦ atmCash(a)+am}" org.eventb.core.label="Deposit_3.depositB.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element14|org.eventb.core.action#internal_element3"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFai{" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="sendRespDeposit" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element15">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFaiw" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element15|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="Deposit_3.sendRespDeposit.grd2" org.eventb.core.predicate="a∈recvReqDep" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element15|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name=")" org.eventb.core.label="Deposit_3.sendRespDeposit.grd1" org.eventb.core.predicate="a∈processedDep" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element15|org.eventb.core.guard#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element15|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="recvReqDep ≔ recvReqDep ∖ {a}" org.eventb.core.label="Deposit_3.sendRespDeposit.act4" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element15|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="sendRespDep ≔ sendRespDep∪{a}" org.eventb.core.label="Deposit_3.sendRespDeposit.act3" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element15|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="d" org.eventb.core.assignment="processedDep ≔ processedDep ∖ {a}" org.eventb.core.label="Deposit_3.sendRespDeposit.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element15|org.eventb.core.action#internal_element3"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFai|" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="recvRespDeposit" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element16">
<org.eventb.core.scGuard name="'" org.eventb.core.label="Deposit_3.recvRespDeposit.grd1" org.eventb.core.predicate="a∈sendRespDep" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element16|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element16|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ATM"/>
<org.eventb.core.scAction name="b" org.eventb.core.assignment="recvRespDep ≔ recvRespDep∪{a}" org.eventb.core.label="Deposit_3.recvRespDeposit.act4" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element16|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="c" org.eventb.core.assignment="sendRespDep ≔ sendRespDep ∖ {a}" org.eventb.core.label="Deposit_3.recvRespDeposit.act5" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element16|org.eventb.core.action#internal_element2"/>
</org.eventb.core.scEvent>
<org.eventb.core.scEvent name="sendRespTransferFai}" org.eventb.core.accurate="true" org.eventb.core.convergence="0" org.eventb.core.extended="false" org.eventb.core.label="depositATM" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17">
<org.eventb.core.scRefinesEvent name="'" org.eventb.core.scTarget="/ATMintegralRefined/ATM_TD_2.bcm|org.eventb.core.scMachineFile#ATM_TD_2|org.eventb.core.scEvent#respTransferFaix" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.refinesEvent#internal_element1"/>
<org.eventb.core.scGuard name="(" org.eventb.core.label="Deposit_3.depositATM.grd12" org.eventb.core.predicate="a∈recvRespDep" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.guard#internal_element1" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name=")" org.eventb.core.label="Deposit_3.depositATM.grd9" org.eventb.core.predicate="a∈dom(atmDepAm)" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.guard#internal_element2" org.eventb.core.theorem="false"/>
<org.eventb.core.scGuard name="*" org.eventb.core.label="Deposit_3.depositATM.grd10" org.eventb.core.predicate="atmDepAm(a)=am" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.guard#internal_element3" org.eventb.core.theorem="false"/>
<org.eventb.core.scParameter name="a" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.parameter#internal_element2" org.eventb.core.type="ATM"/>
<org.eventb.core.scParameter name="am" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.parameter#internal_element1" org.eventb.core.type="ℤ"/>
<org.eventb.core.scAction name="an" org.eventb.core.assignment="recvRespDep ≔ recvRespDep ∖ {a}" org.eventb.core.label="Deposit_3.depositATM.act6" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.action#internal_element1"/>
<org.eventb.core.scAction name="ao" org.eventb.core.assignment="transD ≔ transD ∖ {a}" org.eventb.core.label="Deposit_3.depositATM.act5" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.action#internal_element2"/>
<org.eventb.core.scAction name="ap" org.eventb.core.assignment="atmCashA ≔ atmCashA{a ↦ atmCashA(a)+am}" org.eventb.core.label="Deposit_3.depositATM.act2" org.eventb.core.source="/ATMintegralRefined/ATM_TD_3.bum|org.eventb.core.machineFile#ATM_TD_3|org.eventb.core.event#internal_element17|org.eventb.core.action#internal_element3"/>
</org.eventb.core.scEvent>
</org.eventb.core.scMachineFile>
