00:01:22 -!- SevenInchBread has joined. 00:08:28 -!- kxspxr has joined. 00:17:12 -!- sp3tt has quit (Connection timed out). 00:27:51 -!- SevenInchBread has quit (Read error: 104 (Connection reset by peer)). 00:28:25 -!- SevenInchBread has joined. 00:29:13 -!- _D6Gregor1RFeZi has changed nick to GregorR. 00:50:40 -!- ihope has joined. 00:56:36 -!- kxspxr has quit. 02:25:27 -!- ihope_ has joined. 02:29:45 -!- goban has joined. 02:29:47 #ps 02:29:53 ~ps 02:29:53 None 02:29:57 Really? 02:29:58 ihope 02:30:03 Suspicious. 02:30:10 ? 02:30:12 bsmntbombdood: yes? 02:30:13 you restarted it 02:30:22 When? 02:30:29 #exec dir(self) 02:30:44 ~ is the command character here, guys :-P 02:30:51 er 02:31:03 kill everthing 02:31:11 #exec self.raw("MSG #esoteric "+str(dir(self))) 02:31:22 PRIVMSG, not MSG. 02:31:29 ~exec sys.stdout(dir(self)) 02:31:30 ['COMMAND_CHAR', 'THREADING', '__doc__', '__init__', '__module__', 'chan', 'commands_running', 'commands_running_lock', 'connect', 'connected', 'disconnect', 'do_callbacks', 'do_ctcp', 'do_exec', 'do_kill', 'do_ps', 'do_quit', 'do_raw', 'errorchan', 'exec_execer', 'get_message', 'host', 'ident', 'ihope', 'listen', 'load_callbacks', 'message_re', 'nick', 'owner', 'pong', 'p 02:31:30 ort', 'print_callbacks', 'raw', 'raw_regex_queue', 'readbuffer', 'realname', 'register_raw', 'save_callbacks', 'socket', 'sockfile', 'verbose'] 02:31:35 Or that. 02:31:43 #exec self.raw("PRIVMSG #esoteric "+str(dir(self))) 02:31:54 sheesh 02:32:06 ~exec self.raw("PRIVMSG #esoteric :"+str(dir(self))) 02:32:06 it won't work anyhow, you are missing a colon. 02:32:07 ['COMMAND_CHAR', 'THREADING', '__doc__', '__init__', '__module__', 'chan', 'commands_running', 'commands_running_lock', 'connect', 'connected', 'disconnect', 'do_callbacks', 'do_ctcp', 'do_exec', 'do_kill', 'do_ps', 'do_quit', 'do_raw', 'errorchan', 'exec_execer', 'get_message', 'host', 'ident', 'ihope', 'listen', 'load_callbacks', 'message_re', 'nick', 'owner', 'pong', 'port', 'print_callbacks', 'raw', 'raw_regex_queue', 'readbuffer', 'realname', 'regi 02:32:32 #exec self.raw("PRIVMSG #esoteric ""+str(dir(self))) 02:32:35 #exec self.raw("PRIVMSG #esoteric :"+str(dir(self))) 02:32:39 um... 02:32:52 anyone else thinks sgeo is a bit dense today? 02:33:02 Sgeo: ~exec, not #exec 02:33:19 Is it the same code on bsmnt_bot and ihope? erm 02:33:25 * oerjan says this, having misspelled stdout as output for n-1 of the last n attempts 02:33:35 Sgeo: what? 02:33:40 ~ps 02:33:41 None 02:33:47 #exec self.raw("QUIT :") 02:33:47 * DogKing has quit (Active Quit: ) 02:33:52 Sgeo: mine was running with # as the command character. 02:33:54 ihope is not a bot. I hope this clears things up. 02:34:17 I started it with an ~exec on this one. 02:34:18 * bsmntbombdood growls at ihope_ 02:34:24 bsmntbombdood: yes? 02:34:37 just felt like growling 02:34:40 Oh. 02:36:04 * bsmntbombdood giggles at ihope_ 02:36:06 hm... 02:36:48 a Zoo language, unifying OOK, MOO and various other beastly endeavours. 02:40:09 -!- bsmnt_bot has quit. 02:40:28 -!- bsmnt_bot has joined. 02:42:04 -!- bsmnt_bot has quit (Client Quit). 02:42:23 -!- bsmnt_bot has joined. 02:43:14 -!- ihope has quit (Success). 02:44:02 -!- bsmnt_bot has quit (Client Quit). 02:44:18 -!- bsmnt_bot has joined. 02:49:30 -!- bsmnt_bot has quit. 02:49:46 -!- bsmnt_bot has joined. 02:59:43 -!- bsmnt_bot has quit (Excess Flood). 03:00:01 -!- bsmnt_bot has joined. 03:01:13 -!- ihope_ has changed nick to foobar. 03:01:42 -!- foobar has changed nick to ihope. 03:05:11 * oerjan again advertises nickserv's ghost command 03:05:40 -!- bsmnt_bot has quit (Remote closed the connection). 03:05:48 -!- bsmnt_bot has joined. 03:05:57 -!- ShadowHntr has joined. 03:12:33 -!- Sgeo has quit (zelazny.freenode.net irc.freenode.net). 03:12:33 -!- puzzlet has quit (zelazny.freenode.net irc.freenode.net). 03:12:57 -!- puzzlet has joined. 03:14:15 -!- bsmnt_bot has quit. 03:14:20 -!- bsmnt_bot has joined. 03:40:49 -!- crathman has joined. 03:41:50 fun, we can blow up any combinatory logic program to any size 03:41:55 replace I with SKI 03:42:03 K with S(KK)I 03:42:34 S with S(KS)I 03:42:37 -!- Sgeo has joined. 03:44:21 repeat ad nauseuj 03:44:22 m 03:44:30 *am 03:45:21 right 03:45:25 * oerjan draws his roman soldier sword 03:46:04 That is a noun of the FIRST declension, so it's accusative ends in... ? 03:46:12 *its 03:46:14 huh? 03:46:34 You haven't seen Life of Brian? 03:46:51 no 03:47:09 (Strictly speaking, neither have I, somehow I always miss the middle) 03:48:21 S(KI)I 03:48:30 There's this hilarious part where John Cleese's Roman character scolds Brian for writing Romans Go Home grafitti 03:48:56 But not because of what it says, but because he butchers the Latin grammar 03:51:56 -!- digital_me has quit (Remote closed the connection). 03:54:21 -!- bsmnt_bot has quit. 03:54:24 -!- bsmnt_bot has joined. 03:57:20 SSK 03:57:56 SSKxy = xyx 04:00:15 Wait, what's this ghost advertisement stuff all about? 04:02:12 about getting back your nisk after being thrown off 04:02:16 *nick 04:02:37 Also, bsmntbombdood, was it you some of us were trying to teach ordinal numbers to? 04:02:41 do /msg nickserv help ghost 04:02:43 oerjan: how's that relevant to stuff? 04:03:04 Oh, the... right, yeah. 04:03:08 yeah 04:03:35 bsmntbombdood: got it figured out yet? 04:03:47 haven't read anything since then 04:04:21 bsmntbombdood: well, mind if I try one more time? 04:04:26 is it time for confusing him more by telling about epsilon? 04:04:33 oerjan: nah. 04:05:53 basically, ordinals are all about induction. 04:06:26 I'd say they're all about well-orderings. 04:06:44 That, too. 04:06:47 Yeah. 04:07:02 But well-ordering is what you need for induction to be well-defined. 04:07:19 A well-ordering is an ordering of a set such that all subsets of the set have a least element. 04:07:19 -!- crathman has quit (Read error: 110 (Connection timed out)). 04:07:36 For example: the positive integers: {1, 2, 3, 4...} 04:07:53 Any (non-empty) subset of them has a least element. 04:08:03 huh? 04:08:13 isn't that any set? 04:08:15 And that is equivalent to the usual rule of induction. 04:08:22 Can you think of a set of positive integers that has no least element? 04:08:32 ...Wait, what? 04:08:51 Any set of positive integers has no least element. 04:08:59 *a 04:09:11 ...Right, yes. 04:09:30 Now, an ordinal number essentially expresses one notion of the size of a well-ordered set. 04:10:01 {1} has the ordinal number 1, {1,2} has the ordinal number 2, {1,2,3} has the ordinal number 3... 04:10:19 Then for {1,2,3,4...}, the ordinal number is omega. 04:11:01 Now, for a "bigger" well-ordering of the natural numbers, we could say 1 is greater than the rest: {2,3,4...1}. 04:11:22 There are other kinds of sets that _don't_ have least elements, for example the set of all _negative_ integers. 04:11:25 Look at it as {2,3,4,5...1}, and it seems like it has one extra element. 04:11:29 Yes, like that. 04:11:58 Now, this one extra element is expressed by adding one, so this new set has the ordinal number omega+1. 04:12:27 {1,2,3,4,5...} is the same as {2,3,4,5,...1} 04:12:33 Then if you say 1 is greater than everything except 2, and 2 is greater than everything, you get {3,4,5,6...1,2}. The ordinal number for that would be omega+2. 04:12:55 As a set, yes, but it's the order they're in that matters here, not the elements themselves. 04:12:57 Not when you consider the ordering. 04:13:10 sets are unordered 04:13:26 Well, call it an order instead of a set, then. 04:14:41 "Ordered set" is really an abbreviation for a set, plus an order relation on that set. 04:14:53 k 04:14:54 It's the same set, yes, but 1 is greater than everything else in the set--it's an infinity, basic(al)ly. 04:15:38 So then if you go do something like {0,2,4,6,8...1,3,5,7,9...}, you have the same set again, but this time you have an infinite number of things, each of which is greater than another infinity of things. 04:15:51 This is omega+omega, or omega*2. 04:16:33 If it confuses you to change the ordering of the natural numbers, it is possible (for now) to use sets of fractions instead. 04:16:47 Indeed it is. 04:16:55 fractions? 04:17:15 How about something like this: {0, 0.9, 0.99, 0.999... 1} 04:17:17 Say, {0, 1/2, 1/3, ..., 1, 1+1/2, 1+1/3, 1+1/4, ...} also has ordering omega*2 04:17:30 oerjan: but that's still out of order. 04:17:33 -!- SevenInchBread has quit (Read error: 113 (No route to host)). 04:17:33 that would be omega+1 04:17:36 whoops 04:17:54 {0, 1/2, 2/3, 3/4... 1, 1+1/2, 1+2/3...} 04:18:07 right 04:18:17 k 04:18:21 not sure where this is going 04:18:37 Then you can still add more to the end: {0, 1/2, 2/3, 3/4... 1, 1+1/2, 1+2/3... 2} would represent the ordinal omega*2+1. 04:19:22 Go as far as you want, adding as many infinities as you want: {0, 1/2, 2/3, 3/4... 1, 1+1/2... 2... 3... 4.....} 04:19:35 Go on forever like *that*, and you have omega*omega, or omega^2. 04:19:58 Now, the nice thing is that the different well-orderings are themselves well-ordered. 04:20:56 Therefore, you can represent each ordinal as a set of ordinals: instead of {0, 1/2, 2/3, 3/4... 1, 1+1/2, 1+2/3, 1+3/4...}, you can have {0, 1, 2, 3... omega, omega+1, omega+2, omega+3...} 04:21:15 omega*2 happens to be the lowest ordinal number greater than all elements of that set. 04:21:55 And if you have a "continuous" set like that, it defines an ordinal number. 04:22:32 So if you took the unions of the sets corresponding to, say, omega, omega*2, omega*3, omega*4, etc., you'd end up with the set representing omega*omega. 04:23:23 The union, I mean, not unions. 04:27:18 Often, an ordinal number is said to actually be the set of ordinal numbers that goes with it, so ordinal numbers are defined as being sets of ordinal numbers. 04:28:10 Those are known as von Neumann ordinals, after the inventor. 04:30:25 You can add ordinals: 04:31:12 -!- Sgeo has quit (Read error: 110 (Connection timed out)). 04:31:21 If you have an ordered set in two parts, first one ordered as the ordinal a and then one part ordered as the ordinal b, then the ordinal of the whole set is called a+b. 04:32:22 You can see that in the omega+1, omega+2 etc. above. 04:32:57 Strangely enough this addition is not commutative. 04:33:10 1+omega = omega != omega+1 04:33:43 (It is associative however) 04:34:07 (I.e. a+(b+c) = (a+b)+c) 04:34:30 I like natural addition. 04:34:43 -!- Sgeo has joined. 04:35:11 -!- ShadowHntr has quit ("End of line."). 04:35:48 To multiply: 04:38:22 Make a set containing a subdivision into segments, all with the same order a, and such that the set of segments themselves have order b. Then that whole set has order a*b. 04:38:47 So omega*2 consists of two subsets, each with order omega. 04:38:58 This is not commutative either. 04:39:51 But it is associative, and there is distributivity: a*(b+c) = a*b + a*c 04:45:46 That distributivity hold only rightwards. 04:45:51 *holds 04:47:09 For powers, we need to use induction. 04:47:43 -!- goban has quit ("Leaving"). 04:48:01 a^1 = a, and a^(b+c) = a^b*a^c. 04:48:24 Except that doesn't help us reach infinity, so: 04:49:22 a^b = union of a^(b_l) when b = union of b_l. 04:49:29 omega. 04:49:34 There, I've reached infinity! 04:49:37 :-P 04:49:48 -!- alex-4 has joined. 04:49:54 Good, now you can explain omega^omega :) 04:52:25 oerjan: i don't hate any languages :) 04:52:39 but i don't know swedish that well 04:52:42 that's good, neither do i 04:52:48 -!- sp3tt has joined. 04:52:58 then you can explain oko here :) 04:53:13 okoing is a way of life :) 04:53:20 omega^omega: the union of omega^n where n < omega. 04:56:20 Now then, epsilon = union of omega^(omega^(omega^...))) nested n times when n < omega 04:57:51 omega, omega^omega, omega^omega^omega, omega^omega^omega^omega... 04:58:01 omega^epsilon = epsilon, incidentally. 04:58:27 epsilon = omega^^omega, no? 04:58:29 If I remember right. 04:58:59 I suppose so. 04:59:14 I am not sure of that ^^ notation. 04:59:29 Tetration? 04:59:40 And omega^^^omega would be epsilon_1. 04:59:47 I think. 05:00:02 Well, maybe not. 05:00:13 (omega^^omega)^^omega? 05:00:26 I think we just went past what I remember :) 05:01:38 Except one huge step more: 05:02:44 omega_1 = the union of all ordinals of reorderings of the natural numbers. 05:03:17 (I hope omega_1 is the right name. The first ordinal of cardinality aleph_1.) 05:05:48 Yes, omega_1 is the first ordinal of cardinality aleph_1. 05:05:59 omega_n has cardinality aleph_n, in general. 05:06:06 wtf are you talking about :O 05:06:15 Ordinal numbers 05:06:28 there's only two numbers 05:06:32 zero and one. 05:06:42 lament: what about... uh... hmm. 05:07:13 lament: is that algebraically closed? 05:07:21 I mean, surely not. 05:07:38 x^2 + x + 1 = 0 05:07:41 Solve that. 05:07:51 {0,1} form a field if that's what you're asking. 05:07:59 Algebraically closed. 05:08:07 Polynomials all have solutions. 05:08:28 x*x = x and x+x = 0, so that equation up there is equivalent to 1 = 0. 05:08:51 Also, it's Friday over here. Less than ten minutes ago, it was Thursday. 05:08:59 I think I should be getting to bed. 05:09:05 so what if it's not algebraically closed? 05:09:18 Then it cannot be all numbers. 05:09:26 Then... uh... say, why don't we define CK_n for all ordinal numbers n? 05:09:47 okay, let's close it then 05:09:47 What is CK? 05:10:33 The smallest ordinal number that can't be enumerated by a computer of order n, where a computer of order n is a Turing machine, except able to solve the halting problems for computers of orders less than n. 05:10:40 Close it, eh... 05:10:54 Let's say B*B + B + 1 = 0. 05:11:01 That means B*B + B = 1. 05:11:29 So B(B + 1) = 1, if that matters at all. 05:11:48 Hey, why don't we call it 2? 05:11:55 2*2 + 2 = 1. 05:12:00 -!- crathman has joined. 05:12:18 Then we could say 1 + 2 = 3. 05:12:26 Eventually, you end up with all the nimbers. 05:12:32 ;-) 05:12:38 Fun. Bye! 05:15:52 well no 05:16:20 ? 05:17:22 that doesn't sound right 05:18:03 What doesn't sound right, and by the way nimbers was probably not a misspelling. 05:18:31 oh, well, okay then 05:30:54 -!- ihope has quit (Connection timed out). 05:58:20 can K be made with S and I? 05:58:49 no, S and I cannot remove variables 05:59:25 They are in the subset called lambda_I calculus 05:59:48 where in \x.E, E has to contain x 05:59:59 right 06:00:30 is lambda_i calculus turing complete? 06:00:42 I vaguely recall yes 06:01:05 church numeral 0 doesn't work 06:01:25 something about simulating K for a large enough subset to make it work for numerals 06:01:27 Is this Unlambda fun? 06:01:42 combinatory logic 06:01:43 Is this (Unlambda fun) ? 06:02:01 Ah. Is he creating the Church numerals? 06:02:10 -!- crathman has quit (Read error: 104 (Connection reset by peer)). 06:02:18 -!- crathman_ has joined. 06:02:20 -!- crathman_ has changed nick to crathman. 06:02:23 no we were discussing whether K is necessary for Turing completeness 06:03:15 i guess S and I might not be enough, to get lambda_I you need also B and C 06:03:43 Ah. 06:03:46 B and C don't get rid of variables though 06:04:06 -!- ShadowHntr has joined. 06:04:44 s/variables/arguments/ 06:05:09 i don't know the construction for a "simulated" K for numerals, however 06:05:49 it was either Church or Curry's work, I guess 06:07:19 wikipedia: The constants of CLI are: I, B, C and S, which form a basis from which all CLI terms can be composed (modulo equality) 06:07:48 thought so 06:08:03 under "lambda calculus", I found the quote: 06:08:16 Note that in Church's original lambda calculus, the formal parameter of a lambda expression was required to occur at least once in the function body, which made the above definition of 0 impossible 06:10:00 but they don't tell you what it is 06:11:02 where did you find that CLI quote? 06:12:08 http://en.wikipedia.org/wiki/Combinatory_logic#CLK_versus_CLI_calculus 06:17:56 heh, searching for lambdaI gives an article with the title "Proving PSN after ruining a perfectly good calculus" 06:18:04 *googling 06:18:04 -!- Sgeo has quit (Read error: 104 (Connection reset by peer)). 06:19:31 PSN? 06:20:37 preservation of strong normalization 06:20:44 i think it was 06:20:57 it was the rest of the title i found funny :) 06:23:49 remember iota from the other day? 06:23:56 yes 06:24:24 If we use a different combinator, \x.xKSK, the definitions of S and K are shorter 06:24:45 x=\x.xKSK 06:24:51 i may have read that somewhere 06:24:56 K = (xx)x 06:25:29 -!- ShadowHntr has quit (Read error: 104 (Connection reset by peer)). 06:27:54 S = x(xx) 06:28:00 much shorter than iota 06:29:04 as short as you could possibly get them 06:29:33 or could you get one of them to be xx? hm. 06:30:08 -!- ShadowHntr has joined. 06:30:45 S = Kx is impossible 06:32:38 K=Sx would mean y = Kyz = Sxyz = xz(yz), but yz cannot determine y for all y and z so that is impossible 06:34:20 S = xK and K = xS seem harder to analyze 06:40:37 I think that's pretty darn good 06:41:15 `x`xx, 5 chars 06:56:49 -!- goban has joined. 07:23:26 -!- goban has quit ("Konversation terminated!"). 07:25:39 -!- goban has joined. 07:27:52 -!- helios_ has joined. 07:28:08 -!- helios24 has quit ("Leaving"). 07:28:39 -!- helios_ has changed nick to helios24. 07:37:50 -!- voodooattack has joined. 07:40:52 -!- goban has quit (Remote closed the connection). 07:44:33 -!- goban has joined. 07:48:15 -!- goban has quit (Client Quit). 07:49:01 -!- crathman_ has joined. 07:49:24 -!- crathman has quit (Read error: 104 (Connection reset by peer)). 07:49:47 -!- crathman_ has changed nick to crathman. 07:49:59 -!- goban has joined. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:06:16 -!- Arrogant has joined. 08:16:20 -!- oerjan has quit ("leaving"). 08:39:24 -!- crathman has quit (Read error: 110 (Connection timed out)). 08:52:48 -!- ShadowHntr has quit (Read error: 104 (Connection reset by peer)). 08:53:34 -!- goban has quit ("Konversation terminated!"). 08:55:15 -!- goban has joined. 09:11:36 -!- Arrogant has quit ("Leaving"). 11:47:10 -!- ihope has joined. 11:49:03 -!- ihope has quit (Client Quit). 13:09:01 -!- nazgjunk has joined. 13:20:08 -!- voodooattack has quit (Read error: 110 (Connection timed out)). 13:27:30 -!- voodooattack has joined. 13:32:07 -!- voodooattack has quit (Nick collision from services.). 13:32:17 -!- voodooattack| has joined. 13:32:57 -!- voodooattack| has changed nick to voodooattack. 13:41:23 -!- voodooattack has quit (Nick collision from services.). 13:41:37 -!- voodooattack has joined. 13:55:48 -!- voodooattack has quit (Nick collision from services.). 13:56:02 -!- voodooattack has joined. 14:13:06 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)). 14:13:17 -!- UpTheDownstair has joined. 14:13:29 -!- UpTheDownstair has changed nick to nazgjunk. 14:43:15 -!- ooooo has joined. 14:52:00 -!- crathman has joined. 15:46:31 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)). 15:46:46 -!- UpTheDownstair has joined. 15:47:41 -!- UpTheDownstair has changed nick to nazgjunk. 15:55:35 -!- nazgjunk has quit (Read error: 131 (Connection reset by peer)). 15:55:44 -!- UpTheDownstair has joined. 15:58:49 -!- UpTheDownstair has changed nick to nazgjunk. 16:16:12 -!- FabioNET has joined. 16:44:13 -!- voodooattack has quit (Nick collision from services.). 16:44:27 -!- voodooattack has joined. 16:58:08 -!- voodooattack has quit (Nick collision from services.). 16:58:22 -!- voodooattack has joined. 17:01:56 -!- voodooattack has quit (Nick collision from services.). 17:02:10 -!- voodooattack has joined. 17:27:43 -!- sebbu has joined. 17:27:56 -!- goban has quit (Read error: 104 (Connection reset by peer)). 17:28:14 -!- goban has joined. 17:36:22 -!- kxspxr has joined. 17:36:32 -!- kxspxr has quit (Client Quit). 17:38:52 print "hi" 17:41:11 -!- UpTheDownstair has joined. 17:41:22 -!- nazgjunk has quit (Read error: 104 (Connection reset by peer)). 17:42:30 -!- UpTheDownstair has changed nick to nazgjunk. 17:51:17 -!- voodooattack has quit (Nick collision from services.). 17:51:31 -!- voodooattack has joined. 18:06:09 -!- FabioNET has quit (Read error: 145 (Connection timed out)). 18:23:36 -!- FabioNET has joined. 18:29:24 -!- sebbu2 has joined. 18:37:15 -!- sebbu has quit (Read error: 60 (Operation timed out)). 18:38:46 -!- FabioNET has quit (Read error: 145 (Connection timed out)). 18:54:36 -!- sebbu2 has changed nick to sebbu. 19:33:33 -!- FabioNET has joined. 19:52:28 -!- ShadowHntr has joined. 20:21:16 -!- _FabioNET_ has joined. 20:21:20 -!- FabioNET has quit (Read error: 110 (Connection timed out)). 20:39:14 -!- voodooattack has quit. 21:20:47 -!- oerjan has joined. 21:23:13 -!- SevenInchBread has joined. 21:23:27 hi crumby one 21:45:00 x=\x.xSKS 21:45:04 S = xx 21:45:15 not sure if K is possible yet 21:45:22 hm... 21:46:28 I = x(xx) 21:48:40 how do you get that last one? 21:49:07 xS = SSKS 21:49:53 erm 21:51:17 SSKS = SS(KS) 21:51:39 I goofed 21:51:49 easy to do 21:53:52 I get x(x(xx))=S as well 21:57:32 x(xxx)=SS(SKS)=SSI 22:03:22 x(x(xxx))=S 22:03:55 xx(xx)=SS, x(xx)x=SxS, xxxx=Sxx 22:04:09 SSxy = Sx(xy) 22:04:29 you mean Sy(xy) 22:04:30 Sx(xy)z = xz(xyz) 22:05:15 what? 22:05:24 SSxy=Sy(xy) 22:05:24 i was just using x as a variable 22:05:41 i realized that 22:05:57 crap 22:05:59 yeah 22:07:17 i seem to be always getting back to S: x(xx(xx))=S too) 22:08:05 yeah 22:08:17 think this is a dead end 22:08:51 maybe, maybe not. at least getting S cuts many search branches short quick 22:09:15 because SKS = I 22:09:54 darn you are right 22:10:26 well not quite 22:10:33 but it's still \x.(((xS)K)S) and not \x.x(SKS) 22:11:37 none of the four-x versions actually contain K 22:12:18 or wait 22:12:38 well x itself is still in there so there might be a chance 22:16:40 ...DNS is some weird, chaotic stuff... 22:16:57 but then again... that kind of applies to networking in general. 22:17:42 x(x(xx)x)=SK=KI eventually 22:24:40 x(xxxx)=SKS=I 22:25:24 cool 22:34:58 x(x(x(xx)x))=KS, I have a feeling of getting closer... 22:35:18 i've gone on to other combinators 22:35:18 (That was the first with 6 x's 22:35:21 ) 22:35:36 fine then we aren't duplicating work 22:35:46 i'm going for shortness of S and K 22:36:05 indeed this x has been a disappointment in that respect 22:36:06 hmm... I'm really interested in the idea of an "anonymous decentralized server"... for lack of a better term 22:36:57 but then, if it really was shorter then since the combinator is the same size as the known one it would certainly have been used instead 22:37:18 i've got one with a short S and I 22:37:21 no K yet 22:37:26 hmm.. it'd be like a P2P network acting as a single virtual server... all the data would be partitioned amongst all the peers in the network... and so there would be no real "server". 22:37:59 ...would be great for illegal stuff. :) 22:38:48 Uh, DHT you mean? 22:39:14 If you took any ol' DHT system, then connected to it without actually joining the DHT, you have exactly what you're looking for. 22:40:18 It would be great for free web hosting too... 22:40:46 since everyone being hosted is chipping in some process cycles and hard disk space of their own... there's no need to charge anyone for the service. 22:41:28 freenet 22:42:15 indeeed 22:42:30 without the kiddy-porn though, I hope 22:42:40 IIRC, there are no non-participating clients in FreeNet. 22:42:41 or maybe bittorrent 22:42:51 freenet sucks because it's written in java 22:42:54 GregorR: you could write a selfish client if you wanted to 22:43:13 nah... you could have kiddie porn. 22:43:16 bsmntbombdood: how so/ 22:43:23 SimonRC: resource hog 22:43:37 maybe 22:44:05 Some non-virtual instance methods might be nice in Java. 22:44:10 I ran freenet for a while untill I got tired of it using half my memory and all of my cpu 22:44:18 Or sealed classes. 22:44:30 they would speed up method calls a fair bit I ssupect 22:44:42 bsmntbombdood: and all your network connection 22:44:43 bsmntbombdood, you can't give it a maximum? 22:44:59 This is apparently about networking water coolers, from the looks of slide 2: http://www.dur.ac.uk/tom.friedetzky/local/par/pc14-4up.pdf 22:45:22 gargh 22:45:26 what? 22:45:29 X=\x.xSKSK 22:45:34 S = XX 22:45:41 what is this for? 22:46:09 I = X(XX) 22:46:53 SimonRC, trying to find a single combinator to have the shortest S and K 22:47:11 best we have so far is X=\x.xKSK 22:52:57 hmmm... so freenet doesn't die down on its process cycles when it doesn't need them and/or when there's other stuff that needs them on your computer? 23:13:03 -!- nazgjunk has quit ("i need to sleep ffs"). 23:21:01 hmm http://ling.ucsd.edu/~barker/Iota/ 23:21:27 yeah 23:21:29 yes, that's where we started 23:21:51 but \x.xKSK is shorter than iota 23:22:40 -!- crathman has quit ("Chatzilla 0.9.77 [Firefox 2.0.0.1/2006120418]"). 23:27:34 oh wow 23:27:43 http://www.cs.uu.nl/people/jeroen/article/combinat/combinat.ps 23:27:45 ? 23:28:15 Darn postscript 23:28:45 X = \f.fS(\xyz.x) 23:28:47 K = XX 23:28:51 S = X(XX) 23:29:13 ok that's the final word then 23:29:25 yeah 23:31:31 the worst is i am sure i have seen that URL before 23:32:55 it was on the iota page 23:35:09 it is considerably more complicated though 23:36:00 -!- sebbu has quit ("@+"). 23:41:45 \f.fS(S(S(KS)S(KK)(KK))(S(KK)I)) 23:42:36 crazy long 23:42:50 i think you have missed some optimizations 23:43:09 probably 23:43:17 \xyz.x = \x.K(Kx) = S(KK)K 23:43:33 uh...yeah 23:43:35 :P 23:43:49 i'm stupid 23:45:29 \f.fS(S(KK)K)=SI(S(KS)(K(S(KK)K))) 23:45:38 wait 23:45:48 too late :) 23:46:02 whoops 23:46:24 \xyz.x = S(KK)(S(KK)I) 23:46:24 *S(SI(KS))(K(S(KK)K)) 23:46:30 not S(KK)K 23:46:42 S(KK)I=K 23:46:58 oh duh 23:47:39 follows from eta-reduction: \x.fx = f 23:48:12 yeah 23:49:17 * SimonRC goes... 23:49:22 silly me 23:50:24 I wonder if there's a shorter I than SKK 23:50:55 no: S, K, SS, SK, KS, and KK are all not I 23:51:45 ...so? 23:51:59 in iota, I is shorter than both S and K 23:52:18 oh you mean with that X 23:53:24 actually there is 23:53:37 because SKX is shorter than SKK :) 23:55:21 oh right 23:55:29 but there still could be a better one 23:56:11 -!- _FabioNET_ has quit (Read error: 110 (Connection timed out)). 23:59:10 XX=K, X(XX)=K, XXX=KX, X(X(XX))=XK=KS_=S, X(XXX)=X(KX)=KXS(\xyz.x)=X(\xyz.x)=(\xyz.x)S(\xyz.x) 23:59:37 eh, wait...