Noncommutative cohomology