Basic Logic Gates Definition