class_docstr: A class for checking if a CNN satisfies constraints. 
docstr: Constructor.
  max_num_2strides is the maximum number of 2-strides (either via pooling or conv
  operations) that the image can go through in the network.
docstr_tok: ["Constructor",".","max_num_2strides","is","the","maximum","number","of","2-strides","(","either","via","pooling","or","conv","operations",")","that","the","image","can","go","through","in","the","network","."]
code: def __init__(
      self,
      max_num_layers,
      min_num_layers,
      max_mass,
      min_mass,
      max_in_degree,
      max_out_degree,
      max_num_edges,
      max_num_units_per_layer,
      min_num_units_per_layer,
      max_num_2strides=None,
  ):
      """Constructor.
      max_num_2strides is the maximum number of 2-strides (either via pooling or conv
      operations) that the image can go through in the network.
      """
      super(CNNConstraintChecker, self).__init__(
          max_num_layers,
          min_num_layers,
          max_mass,
          min_mass,
          max_in_degree,
          max_out_degree,
          max_num_edges,
          max_num_units_per_layer,
          min_num_units_per_layer,
      )
      self.max_num_2strides = max_num_2strides
      self.constraint_names.append("max_num_2strides")
  
imports: import numpy
  from copy import copy
  from ..exd.domains import Domain
label_desc: Use image node_id 1 to create a new CNNConstraintChecker object from inherited base classes: NNConstraintChecker with example: obj = CNNConstraintChecker(max_num_layers, min_num_layers, max_mass, min_mass, max_in_degree, max_out_degree, max_num_edges, max_num_units_per_layer, min_num_units_per_layer, max_num_2strides)