machine theory