module fulladder (A, B, CI, CO, Y); input A; input B; input CI; output CO; assign CO = (((A&B)|(B&CI))|(CI&A)); // (((A * B)+(B * CI))+(CI * A)) output Y; assign Y = ((A^B)^CI); // ((A^B)^CI) endmodule