pub fn identity_element<T, F>(elements: &[T], operation: F) -> Option<T>where T: Copy + PartialEq, F: Fn(T, T) -> T + Copy,
Returns a two-sided identity element for operation, if one exists in elements.
operation
elements