public static List originatedPropositions(Stella_Object self) {
    { Stella_Object value = null;

      { Surrogate testValue000 = Stella_Object.safePrimaryType(self);

        if (Surrogate.subtypeOfP(testValue000, Logic.SGT_LOGIC_NAMED_DESCRIPTION)) {
          { NamedDescription self000 = ((NamedDescription)(self));

            value = self000.objectOriginatedPropositions;
          }
        }
        else if (Surrogate.subtypeOfP(testValue000, Logic.SGT_LOGIC_LOGIC_OBJECT)) {
          { LogicObject self000 = ((LogicObject)(self));

            value = ((List)(KeyValueList.dynamicSlotValue(self000.dynamicSlots, Logic.SYM_LOGIC_OBJECT_ORIGINATED_PROPOSITIONS, null)));
          }
        }
        else if (Surrogate.subtypeOfP(testValue000, Logic.SGT_LOGIC_PROPOSITION)) {
          { Proposition self000 = ((Proposition)(self));

            value = ((List)(KeyValueList.dynamicSlotValue(self000.dynamicSlots, Logic.SYM_LOGIC_PROPOSITION_ORIGINATED_PROPOSITIONS, null)));
          }
        }
        else {
          { OutputStringStream stream000 = OutputStringStream.newOutputStringStream();

            stream000.nativeStream.print("`" + testValue000 + "' is not a valid case option");
            throw ((StellaException)(StellaException.newStellaException(stream000.theStringReader()).fillInStackTrace()));
          }
        }
      }
      if (value == null) {
        return (Stella.NIL_LIST);
      }
      else {
        return (((List)(value)));
      }
    }
  }