fact: Definition ProdBag_bupdate (container: ProdBag) (searchterm: ProdSearchTerm) (updateterm : TUpdateTerm) : list TItem * ProdBag := let (resultA, bagA) := bupdate (Bag:=TBag_A) (fst container) Prod_st_A updateterm in let (resultB, bagB) := bupdate (Bag:=TBag_B) (snd container) Prod_st_B updateterm in match Prod_st_choice with | ProdChoiceA => (resultA, (bagA, bagB)) | ProdChoiceB => (resultB, (bagA, bagB)) end.
imports: Fiat.QueryStructure.Implementation.DataStructures.Bags.BagsInterface Fiat.QueryStructure.Implementation.DataStructures.Bags.BagsProperties