original_docstring: 
          Create a new operation on the sort. The operation is stored in the
          sort's attributes.
  
          Args:
              name: The name of the operation.
              signature: The signature of the operation (the list of sorts it
                         takes as input).
              sort: The sort of the result of the operation. Defaults to self
                    (the sort to which the operation is attached).
          
docstring: Create a new operation on the sort. The operation is stored in the
  sort's attributes.
docstring_tokens: Create a new operation on the sort . The operation is stored in the sort ' s attributes .
code: def operation(self, name, signature, sort=None):
          """
          Create a new operation on the sort. The operation is stored in the
          sort's attributes.
  
          Args:
              name: The name of the operation.
              signature: The signature of the operation (the list of sorts it
                         takes as input).
              sort: The sort of the result of the operation. Defaults to self
                    (the sort to which the operation is attached).
          """
          assert type(name) == str, "Name of an operation must be a string"
          assert type(signature) == tuple, "Signature must be a tuple of sorts"
          for s in signature:
              assert isinstance(s, Sort), "Signature must be a tuple of sorts"
          if sort is None:
              sort = self
          assert isinstance(sort, Sort), "Sort of the operation must be a sort"
          self.__dict__[name] = Operation(name, signature, sort)
code_tokens: def operation ( self , name , signature , sort = None ) : assert type ( name ) == str , "Name of an operation must be a string" assert type ( signature ) == tuple , "Signature must be a tuple of sorts" for s in signature : assert isinstance ( s , Sort ) , "Signature must be a tuple of sorts" if sort is None : sort = self assert isinstance ( sort , Sort ) , "Sort of the operation must be a sort" self . __dict__ [ name ] = Operation ( name , signature , sort )
short_docstring: Create a new operation on the sort.
short_docstring_tokens: Create a new operation on the sort .
comment: """
          Create a new operation on the sort. The operation is stored in the
          sort's attributes.
  
          Args:
              name: The name of the operation.
              signature: The signature of the operation (the list of sorts it
                         takes as input).
              sort: The sort of the result of the operation. Defaults to self
                    (the sort to which the operation is attached).
          """