###################################################################### # This file was *autogenerated* from the file agt-sage-code.sage. ###################################################################### #### ch 1 sage: True and True True sage: True and False False sage: False and True False sage: False and False False sage: def implies(p,q): return not(p and not(q)) sage: implies(True,True) True sage: implies(True,False) False sage: implies(False,True) True sage: implies(False,False) True sage: S1 = Set([Integer(1),ZZ,"Zeus"]) sage: S2 = Set([S1,Integer(1),"Hera"]) sage: S1; S2 {Integer(1), 'Zeus', Integer Ring} {{Integer(1), 'Zeus', Integer Ring}, Integer(1), 'Hera'} sage: S2.cardinality() Integer(3) sage: S1.difference(S2) {'Zeus', Integer Ring} sage: S2.difference(S1) {{Integer(1), 'Zeus', Integer Ring}, 'Hera'} sage: "Zeus" in S1 True sage: S2.symmetric_difference(S1) {{Integer(1), 'Zeus', Integer Ring}, 'Hera', 'Zeus', Integer Ring} sage: S1.symmetric_difference(S2) {{Integer(1), 'Zeus', Integer Ring}, 'Hera', 'Zeus', Integer Ring} sage: S1.intersection(S2) {Integer(1)} sage: S1.union(S2) {{Integer(1), 'Zeus', Integer Ring}, Integer(1), 'Hera', 'Zeus', Integer Ring} ### ch 2 sage: euler_phi(Integer(3)) Integer(2) sage: pi = lambda x: pari(x).primepi() sage: pi(Integer(4)) Integer(2) sage: f1 = lambda x: sqrt(x) sage: f1(Integer(3)) sqrt(Integer(3)) sage: f1(Integer(4)) Integer(2) sage: f2 = lambda x: RR(sqrt(x)) sage: f2(Integer(3)) RealNumber('1.73205080756888') sage: f2(Integer(4)) RealNumber('2.00000000000000') sage: f = x**Integer(4) - Integer(16) sage: f.roots() [(Integer(2)*I, Integer(1)), (-Integer(2), Integer(1)), (-Integer(2)*I, Integer(1)), (Integer(2), Integer(1))] sage: list(cartesian_product_iterator([[Integer(1),Integer(2)], ['a','b']])) [(Integer(1), 'a'), (Integer(1), 'b'), (Integer(2), 'a'), (Integer(2), 'b')] sage: A = matrix(Integer(3),Integer(3),[Integer(1),Integer(2),Integer(3),Integer(4),Integer(5),Integer(6),Integer(7),Integer(8),Integer(9)]) sage: (-Integer(1))*A [-Integer(1) -Integer(2) -Integer(3)] [-Integer(4) -Integer(5) -Integer(6)] [-Integer(7) -Integer(8) -Integer(9)] sage: v = vector([Integer(1),Integer(1),Integer(1)]) sage: A*v (Integer(6), Integer(15), Integer(24)) sage: x = var("x"); y = var("y"); z = var("z") sage: w = vector([x,y,z]) sage: A*w ( Integer(3) z + Integer(2) y + x, Integer(6) z + Integer(5) y + Integer(4) x, Integer(9) z + Integer(8) y + Integer(7) x) sage: A = matrix(Integer(3),Integer(3),[Integer(1),Integer(2),Integer(3),Integer(4),Integer(5),Integer(6),Integer(1),Integer(0),Integer(0)]) sage: det(A) -Integer(3) sage: A**(-Integer(1)) [ Integer(0) Integer(0) Integer(1)] [ -Integer(2) Integer(1) -Integer(2)] [ Integer(5)/Integer(3) -Integer(2)/Integer(3) Integer(1)] sage: B = matrix(Integer(4),Integer(3),[Integer(1),Integer(2),Integer(3),Integer(4),Integer(5),Integer(6),Integer(7),Integer(8),Integer(9),Integer(1),Integer(1),Integer(1)]) sage: B*A [Integer(12) Integer(12) Integer(15)] [Integer(30) Integer(33) Integer(42)] [Integer(48) Integer(54) Integer(69)] [ Integer(6) Integer(7) Integer(9)] sage: A = matrix(Integer(3),Integer(3),[Integer(1),Integer(2),Integer(3),Integer(4),Integer(5),Integer(6),Integer(7),Integer(8),Integer(9)]) sage: det(A) Integer(0) sage: a = var("a"); b = var("b"); c = var("c"); d = var("d") sage: B = matrix(Integer(2),Integer(2),[a,b,c,d]) sage: det(B) a*d - b*c sage: C0 = [x for x in range(-Integer(10),Integer(10)) if x%Integer(3) == Integer(0)]; print C0 [-Integer(9), -Integer(6), -Integer(3), Integer(0), Integer(3), Integer(6), Integer(9)] sage: C1 = [x for x in range(-Integer(10),Integer(10)) if x%Integer(3) == Integer(1)]; print C1 [-Integer(8), -Integer(5), -Integer(2), Integer(1), Integer(4), Integer(7)] sage: C2 = [x for x in range(-Integer(10),Integer(10)) if x%Integer(3) == Integer(2)]; print C2 [-Integer(10), -Integer(7), -Integer(4), -Integer(1), Integer(2), Integer(5), Integer(8)] sage: expand((x+y)**(Integer(5))) y**Integer(5) + Integer(5)*x*y**Integer(4) + Integer(10)*x**Integer(2)*y**Integer(3) + Integer(10)*x**Integer(3)*y**Integer(2) + Integer(5)*x**Integer(4)*y + x**Integer(5) sage: binomial(Integer(5),Integer(2)) Integer(10) sage: terms = ["x","x","y","y","y"] sage: number_of_permutations(terms) Integer(10) sage: permutations(terms) ['xxyyy', 'xyxyy', 'xyyxy', 'xyyyx', 'yxxyy', 'yxyxy', 'yxyyx', 'yyxxy', 'yyxyx', 'yyyxx'] sage: terms = [Integer(1),Integer(2),Integer(3),Integer(4),Integer(5)] sage: number_of_permutations(terms) Integer(120) sage: factorial(Integer(5)) Integer(120) ### ch 3 def swap(g): N = parent(g).degree() return sum([len([i2 for i2 in range(i1+Integer(1),N+Integer(1)) if g(i2)