propositions and inference clause('live_w '['live_w ''ok_cb '])clause('light_l ')clause('live_w '['live_outside'])clause('lit_l '['light_l ''live_l ''ok_l '])clause('lit_l '['light_l ''live_l ''ok_l '])clause('live_l '['live_w '])clause('live_w '['up_s ','live_w '])clause('live_w '['down_s ','live_w '])clause('live_w '['up_s ''live_w '])clause('live_w '['down_s ','live_w ])clause('live_l '['live_w '])clause('live_w '['up_s ','live_w ])clause('live_p_ '['live_w '])clause('live_w '['live_w ''ok_cb '])askable('up_s ')askable('down_s ')askable('up_s ')clause('light_l ')clause('ok_l ')clause('light_l ')clause('ok_l ')clause('ok_l ')clause('ok_cb ')clause('ok_cb ')clause('live_outside')clause('live_p_ '['live_w '])clause('live_w '['live_w ''ok_cb '])clause('ok_l ')clause('ok_cb ')clause('ok_cb ')clause('live_outside')clause('live_p_ '['live_w '])clause('live_w '['live_w ''ok_cb '])askable('down_s ')askable('up_s ')askable('down_s '] print(kb bottom-up proofs (with askablesfixed point computes the fixed point of the knowledge base kb logicbottomup py -bottom-up proof procedure for definite clauses from logicproblem import yes def fixed_point(kb)"""returns the fixed point of knowledge base kb version june