Source code for num_theory.is_prime

[docs] def is_prime(n): """ Check if a number is prime. Parameters ---------- n : int The number to check for primality. Must be a positive integer greater than 1. Returns ------- bool Returns True if the number is prime, otherwise False. Raises ------ ValueError If the input is not a positive integer greater than 1. Examples -------- >>> is_prime(2) True >>> is_prime(4) False >>> is_prime(13) True """ # Input validation if not isinstance(n, int): raise ValueError("Input must be an integer.") if n <= 1: raise ValueError("Input must be a positive integer greater than 1.") # Check primality if n == 2: return True # 2 is the smallest prime number if n % 2 == 0: return False # Exclude all even numbers greater than 2 for i in range(3, int(n ** 0.5) + 1, 2): if n % i == 0: return False return True