Question: How do I allow sqrt in my procedure?

I've tried all sorts of different assignments for a,b and c but all still give me an error 
for root 2. 
have tried posint, int, nonnegative, positve but none work 
any help would be appreciated. 
 
isTriangle:=proc(a::posint,b::posint,c::posint)
if (a+b) > c then print (a,b,c,`are lengths of a triangle`)
#this is according to the triangle inequality theorem
elif (a+b) < c then print (a,b,c,`are not lengths of a triangle`);
elif (a+b) = c then print (a,b,c, `does not adhere to the triangle inequality theorem`)
end if;
end proc;
proc(a::posint, b::posint, c::posint) ... end;
isTriangle(2,5,4);
2, 5, 4, are lengths of a triangle
isTriangle(3,4,7);
3, 4, 7, does not adhere to the triangle inequality theorem
isTriangle(1,3,5);
1, 3, 5, are not lengths of a triangle
isTriangle(1,1,sqrt(2));
Error, invalid input: isTriangle expects its 3rd argument, c, to be of type posint, 
but received 2^(1/2)
Please Wait...