Question
Question 2: Sum-Free Lists Given three sets A, B, and C, we would like to determine whether there exists a triple (a, b, c) such
Question 2: Sum-Free Lists Given three sets A, B, and C, we would like to determine whether there exists a triple (a, b, c) such that a A, b B, c C, and a + b + c = 0. The following Python function receives three lists representing these sets as input and claims to output such a triple as a list [a,b,c], if it exists, or None otherwise. 1 def SumFreeLists (list1 ,list2 ,list3): 2 list2.sort () 3 list3.sort () 4 for i in range(0,len(list1)): 5 j=0 6 k=len(list3)=1 7 while j=0: 8 if list1[i]+ list2[j]+ list3[k]<0: 9 j += 1 10 elif list1[i]+ list2[j]+ list3[k]>0: 11 k == 1 12 else: 13 return [list1[i], list2[j], list3[k]] 14 return None Prove that the algorithm is correct using loop invariants. Note that you will need two separate loop-invariant arguments: one for the inner loop and one for the outer loop.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started