




'''simple docstring'''





import datasets


_SCREAMING_SNAKE_CASE				:  Union[str, Any] 						=					"\\n@InProceedings{conneau2018xnli,\n  author = \"Conneau, Alexis\n                 and Rinott, Ruty\n                 and Lample, Guillaume\n                 and Williams, Adina\n                 and Bowman, Samuel R.\n                 and Schwenk, Holger\n                 and Stoyanov, Veselin\",\n  title = \"XNLI: Evaluating Cross-lingual Sentence Representations\",\n  booktitle = \"Proceedings of the 2018 Conference on Empirical Methods\n               in Natural Language Processing\",\n  year = \"2018\",\n  publisher = \"Association for Computational Linguistics\",\n  location = \"Brussels, Belgium\",\n}\n"

_SCREAMING_SNAKE_CASE				:  Union[str, Any] 						=					"\\nXNLI is a subset of a few thousand examples from MNLI which has been translated\ninto a 14 different languages (some low-ish resource). As with MNLI, the goal is\nto predict textual entailment (does sentence A imply/contradict/neither sentence\nB) and is a classification task (given two sentences, predict one of three\nlabels).\n"

_SCREAMING_SNAKE_CASE				:  int 						=					"\nComputes XNLI score which is just simple accuracy.\nArgs:\n    predictions: Predicted labels.\n    references: Ground truth labels.\nReturns:\n    'accuracy': accuracy\nExamples:\n\n    >>> predictions = [0, 1]\n    >>> references = [0, 1]\n    >>> xnli_metric = datasets.load_metric(\"xnli\")\n    >>> results = xnli_metric.compute(predictions=predictions, references=references)\n    >>> print(results)\n    {'accuracy': 1.0}\n"


def 	UpperCamelCase_(      snake_case				:			Dict				,							snake_case				:			List[Any]	):

							'''simple docstring'''






							return (preds == labels).mean()




@datasets.utils.file_utils.add_start_docstrings(_DESCRIPTION		,		_KWARGS_DESCRIPTION				)
class 					_snake_case						(      datasets.Metric				):




			def   lowerCAmelCase__							(   self				)							->							Optional[int]:

										'''simple docstring'''




										return datasets.MetricInfo(
										    description=_DESCRIPTION							,				citation=_CITATION							,				inputs_description=_KWARGS_DESCRIPTION							,				features=datasets.Features(
										        {
										            "predictions": datasets.Value("int64" if self.config_name != "sts-b" else "float32"				),
										            "references": datasets.Value("int64" if self.config_name != "sts-b" else "float32"				),
										        }				)							,				codebase_urls=[]							,				reference_urls=[]							,				format="numpy"							,				)




			def   lowerCAmelCase__							(   self							,				a__							,				a__				)							->							int:

										'''simple docstring'''




										return {"accuracy": simple_accuracy(a__							,				a__				)}











"""simple docstring"""





def      UpperCAmelCase__				(    SCREAMING_SNAKE_CASE	:		int				,		SCREAMING_SNAKE_CASE	:		int     ):







      '''simple docstring'''




      if a < 0 or b < 0:
            raise ValueError("""the value of both inputs must be positive"""     )
      lowerCAmelCase    		=			str(bin(SCREAMING_SNAKE_CASE     )     )[2:]  # remove the leading "0b"
      lowerCAmelCase    		=			str(bin(SCREAMING_SNAKE_CASE     )     )[2:]
      lowerCAmelCase    		=			max(len(SCREAMING_SNAKE_CASE     )				,		len(SCREAMING_SNAKE_CASE     )     )
      return "0b" + "".join(
          str(int("""1""" in (char_a, char_b)     )     )
          for char_a, char_b in zip(a_binary.zfill(SCREAMING_SNAKE_CASE     )				,		b_binary.zfill(SCREAMING_SNAKE_CASE     )     )     )


if __name__ == "__main__":
       import doctest

       doctest.testmod()






