code: def _validate_logical(self, rule, field, value):
          
          if not isinstance(value, Sequence):
              self._error(field, errors.BAD_TYPE)
              return
  
          validator = self._get_child_validator(
              document_crumb=rule, allow_unknown=False,
              schema=self.target_validator.validation_rules)
  
          for constraints in value:
              _hash = (mapping_hash({'turing': constraints}),
                       mapping_hash(self.target_validator.types_mapping))
              if _hash in self.target_validator._valid_schemas:
                  continue
  
              validator(constraints, normalize=False)
              if validator._errors:
                  self._error(validator._errors)
              else:
                  self.target_validator._valid_schemas.add(_hash)
docs: {'allowed': ('allof', 'anyof', 'noneof', 'oneof')}