add new function and format other files
extend example
add assertion in new funtion
minor
add new file
renaming
add inverse function