Solving Problems on Concurrent Processors