






def 			_SCREAMING_SNAKE_CASE						( __lowercase   :			int			,				__lowercase   :			int    )						->      str:





    """simple docstring"""

    if a < 0 or b < 0:
        raise ValueError("""the value of both inputs must be positive"""    )

    __A         =	str(bin(__lowercase    )    )[2:]  # remove the leading "0b"
    __A         =	str(bin(__lowercase    )    )[2:]  # remove the leading "0b"

    __A         =	max(len(__lowercase    )			,				len(__lowercase    )    )

    return "0b" + "".join(
        str(int(char_a != char_b    )    )
        for char_a, char_b in zip(a_binary.zfill(__lowercase    )			,				b_binary.zfill(__lowercase    )    )    )


if __name__ == "__main__":
  import doctest

  doctest.testmod()












from __future__ import annotations

from decimal import Decimal
from math import *  # noqa: F403

from sympy import diff



def 			_SCREAMING_SNAKE_CASE						( __lowercase   :			str			,				__lowercase   :			float | Decimal			,				__lowercase   :			float = 1_0**-1_0    )						->      float:





    """simple docstring"""

    __A         =	a
    while True:
        __A         =	Decimal(__lowercase    ) - (
            Decimal(eval(__lowercase    )    ) / Decimal(eval(str(diff(__lowercase    )    )    )    )  # noqa: S307
        )
        # This number dictates the accuracy of the answer
        if abs(eval(__lowercase    )    ) < precision:  # noqa: S307
            return float(__lowercase    )


# Let's Execute
if __name__ == "__main__":
  # Find root of trigonometric function
  # Find value of pi
  print(f"""The root of sin(x) = 0 is {newton_raphson('sin(x)', 2)}""")
  # Find root of polynomial
  print(f"""The root of x**2 - 5*x + 2 = 0 is {newton_raphson('x**2 - 5*x + 2', 0.4)}""")
  # Find Square Root of 5
  print(f"""The root of log(x) - 1 = 0 is {newton_raphson('log(x) - 1', 2)}""")
  # Exponential Roots
  print(f"""The root of exp(x) - 1 = 0 is {newton_raphson('exp(x) - 1', 0)}""")




