original_query: What is Church encoding in mathematics?
query: What is Church encoding in mathematics?
answer: Church encoding is a way to represent data and operators in lambda calculus, where the only primitive data type is the function.  It maps terms usually considered primitive (integers, booleans, etc.) to higher-order functions.  While not practical for implementation, it demonstrates that other primitive data types aren't needed for computation.