```
type ValidatorFunction = (celsius: number) => void;

const validateCelsius = (celsius: number): ValidatorFunction => {
  if (typeof celsius !== "number" || !Number.isFinite(celsius)) {
    throw new Error("celsius must be a finite number");
  }
  if (celsius < -273.15) {
    return () => { throw new Error("celsius must be at or above absolute zero"); };
  }
  return () => true;
};

export function celsiusToFahrenheit(celsius: number): number {
  const validate = validateCelsius(celsius);
  validate(); // Throws if celsius is invalid
  return celsius * 1.8 + 32;
}

export function celsiusToKelvin(celsius: number): number {
  const validate = validateCelsius(celsius);
  validate(); // Throws if celsius is invalid
  return celsius + 273.15;
}
```