<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def super_terms(self):
 """Return a dictionary mapping term names to their super terms"""


        # If the doc already has super terms, we've already parsed something, so
        # assume we parsed the declaration, and can use re-use the old decls.
        if self.doc and self.doc.super_terms:
            return self.doc.super_terms


        return  {k.lower(): v['inheritsfrom'].lower()
                         for k, v in self._declared_terms.items() if 'inheritsfrom' in v}