class_docstr: Base class for binary predicates that are defined in terms of
  the intersection primitive.
class_docstr_tok: ["Base","class","for","binary","predicates","that","are","defined","in","terms","of","the","intersection","primitive","."]
docstr: Compute the predicate using the intersects basic predicate.
  lhs and rhs must both be LineStrings or MultiLineStrings.
docstr_tok: ["Compute","the","predicate","using","the","intersects","basic","predicate",".","lhs","and","rhs","must","both","be","LineStrings","or","MultiLineStrings","."]
code: def _compute_predicate(self, lhs, rhs, preprocessor_result):
      """Compute the predicate using the intersects basic predicate.
      lhs and rhs must both be LineStrings or MultiLineStrings.
      """
      basic_result = pairwise_linestring_intersection(
          preprocessor_result.lhs, preprocessor_result.rhs
      )
      computed_result = IntersectsOpResult(basic_result)
      return self._postprocess(lhs, rhs, computed_result)
  
imports: import cupy
  import cudf
  from cuspatial.core.binops.intersection import pairwise_linestring_intersection
  from cuspatial.core.binpreds.basic_predicates import _basic_contains_any, _basic_intersects
  from cuspatial.core.binpreds.binpred_interface import BinPred, IntersectsOpResult, NotImplementedPredicate, PreprocessorResult
  from cuspatial.core.binpreds.feature_equals import EqualsPredicateBase
  from cuspatial.utils.binpred_utils import LineString, MultiPoint, Point, Polygon, _false_series
label_desc: Use image node_id 2 for calling the IntersectsPredicateBase obj's underlying member method code with example usage: obj._compute_predicate(lhs, rhs, preprocessor_result) and returns: self