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