docs: def reward_scope(self,
                       state: Sequence[tf.Tensor],
                       action: Sequence[tf.Tensor],
                       next_state: Sequence[tf.Tensor]) -> Dict[str, TensorFluent]:
          '''Returns the complete reward fluent scope for the
          current `state`, `action` fluents, and `next_state` fluents.
  
          Args:
              state (Sequence[tf.Tensor]): The current state fluents.
              action (Sequence[tf.Tensor]): The action fluents.
              next_state (Sequence[tf.Tensor]): The next state fluents.
  
          Returns:
              A mapping from fluent names to :obj:`rddl2tf.fluent.TensorFluent`.
          '''
          scope = {}
          scope.update(self.non_fluents_scope())
          scope.update(self.state_scope(state))
          scope.update(self.action_scope(action))
          scope.update(self.next_state_scope(next_state))
          return scope