code: def get_entries_in_system(self, elements, inc_structure=False,
                                optional_data=None, additional_criteria=None):
          
          chemsys_list = []
          for i in range(len(elements)):
              for combi in itertools.combinations(elements, i + 1):
                  chemsys = "-".join(sorted(combi))
                  chemsys_list.append(chemsys)
          crit = {"chemsys": {"$in": chemsys_list}}
          if additional_criteria is not None:
              crit.update(additional_criteria)
          return self.get_entries(crit, inc_structure,
                                  optional_data=optional_data)
docs: Gets all entries in a chemical system, e.g. Li-Fe-O will return all
          Li-O, Fe-O, Li-Fe, Li-Fe-O compounds.
  
          .. note::
  
              The get_entries_in_system and get_entries  methods should be used
              with care. In essence, all entries, GGA, GGA+U or otherwise,
              are returned.  The dataset is very heterogeneous and not
              directly comparable.  It is highly recommended that you perform
              post-processing using pymatgen.entries.compatibility.
  
          Args:
              elements:
                  Sequence of element symbols, e.g. ['Li','Fe','O']
              inc_structure:
                  Optional parameter as to whether to include a structure with
                  the ComputedEntry. Defaults to False. Use with care - including
                  structures with a large number of entries can potentially slow
                  down your code to a crawl.
              optional_data:
                  Optional data to include with the entry. This allows the data
                  to be access via entry.data[key].
              additional_criteria:
                  Added ability to provide additional criteria other than just
                  the chemical system.
  
          Returns:
              List of ComputedEntries in the chemical system.