Theory First_Order_Clause.Multiset_Typing_Lifting

theory Multiset_Typing_Lifting
  imports
    Natural_Magma_Typing_Lifting
    Multiset_Extra
    Abstract_Substitution.Functional_Substitution_Lifting
begin

locale mulitset_typing_lifting = 
  typing_lifting where 
  to_set = set_mset and sub_welltyped = sub_welltyped
  for sub_welltyped :: "'sub  unit  bool"
begin

sublocale natural_magma_with_empty_typing_lifting where
  to_set = set_mset and plus = "(+)" and wrap = "λl. {#l#}" and add = add_mset and empty = "{#}"
  by unfold_locales

end

end