docs: def compile_action_preconditions(self,
              state: Sequence[tf.Tensor],
              action: Sequence[tf.Tensor]) -> List[TensorFluent]:
          '''Compiles the action preconditions given current `state` and `action` fluents.
  
          Args:
              state (Sequence[tf.Tensor]): The current state fluents.
              action (Sequence[tf.Tensor]): The action fluents.
  
          Returns:
              A list of :obj:`rddl2tf.fluent.TensorFluent`.
          '''
          scope = self.action_precondition_scope(state, action)
          preconds = []
          with self.graph.as_default():
              with tf.name_scope('action_preconditions'):
                  for p in self.rddl.domain.preconds:
                      fluent = self._compile_expression(p, scope)
                      preconds.append(fluent)
                  return preconds